Сделайте большую диалоговую игрушку на языке искусственного интеллекта своими руками менее чем за 1000 юаней.
Сделайте большую диалоговую игрушку на языке искусственного интеллекта своими руками менее чем за 1000 юаней.

Звездный робототехнический стартап Fig объединился с OpenAI, чтобы выпустить потрясающую новую демонстрацию робототехники. Всего за несколько недель Рисунок быстро внедрил передовую технологию мультимодальных больших моделей OpenAI после объявления 1 марта об инвестициях от таких гигантов, как OpenAI. Этот прорыв натолкнул меня на смелую идею — сделать самодельную игрушку с приводом от большой модели, назовем ее Фигуркой 3000.

Без лишних слов, давайте посмотрим на эффект от моей замены Фигуры 01 на Фигуру 3000.

Видео демонстрация:https://mpvideo.qpic.cn/0bc3beaeqaaaoeamjwpznjsvacodjaeqasaa.f10002.mp4?

Как видите, хотя некоторый разрыв между производительностью и стандартной Фигуркой 01 все же существует, Фигурка 3000 далеко впереди по стоимости, и в пределах тысячи юаней нет соперника:

  1. аппаратное обеспечение Стоимость существования составляет менее тысячи юаней, в основном огненный кролик G6 Плесень и FoloToy Core
  2. голосидентифицироватьиголос Синтезаториспользовать Али Линцзе AI Открытый сервис, бесплатно 2 Месяц, сначала используй, а потом уже об этом говоришь
  3. большой Модельсуществовать Собственныйиз MacbookPro Беги дальше, округление бесплатно

Я также записал процесс изготовления своими руками, надеясь всем помочь.

01 — Как это работает?

Давайте сначала поговорим о принципе работы, чтобы каждый мог его понять. Есть три ключевых шага:

  1. Запись: Пройдено UDP Получайте игрушки, отправляемые из данных записи в реальном времени, и настраивайте их. API STT (речь в текст) Преобразование звуков в текст.
  2. Думая: существование будет немедленно корректироваться после получения предыдущего текста. API LLM (Large Language Model), доступный в потоковом режиме. LLM Генерировать из предложений. Затем отрегулируйте использование API TTS (преобразование текста в речь) Преобразуйте предложения в человеческие голоса.
  3. Воспроизвести аудио: игрушка получит FoloToy сервергенерироватьиз Аудиофайлы TTS (текст в звук) передаются в потоковом режиме и воспроизводятся последовательно.

02 — Подготовка перед стартом

Прежде чем вы начнете создавать свой LLM (большая языковая модель) Прежде чем играть, знайте, что вам нужно изаппаратное обеспечение, программное обеспечение и технические знания имеют важное значение. В этом разделе вы узнаете, как подготовить все необходимое для плавного старта.

аппаратное обеспечение

FoloToy Core:GPT AI Основная плата голосового взаимодействия, являющаяся мозгом проекта, позволяет игрушкам общаться с AI Выполните голосовое взаимодействие. (При покупке укажите мой промокод. F-001-2 чтобы получить скидку. )

Форма для игрушек: должна содержать основные детали, такие как микрофоны, динамики, кнопки, переключатели, блоки питания и т. д. Здесь я использовал форму Fire Rabbit G6, потому что она идеально подходила по виду и размеру для моего проекта. Домашние дети тоже любят эту игрушку.

сервер

Используйте свою собственную машину, например. MacBookPro,Убедитесь, что ваша игрушка имеет надежную серверную часть для обработки и реагирования на взаимодействия. или,использоватьоблакосервер,Такие как Alibaba Cloud, Tencent Cloud и т. д.,Шаги те же.

запас знаний

  1. Докер (обязательно): понять Docker Для существования крайне важно развертывать программное обеспечение в контейнерах, что делает ваш проект портативным и масштабируемым. яиспользовать это для начала Folo сервер。
  2. MQTT (необязательно): MQTT (облегченный протокол обмена сообщениями) будет очень полезен для связи между игрушками.
  3. EMQX (необязательно): брокер MQTT с открытым исходным кодом для IoT, промышленного Интернета вещей, подключенных транспортных средств. Используйте для управления своими игрушками.
  4. оллама (необязательно): если вы хотите запустить большую языковую модель локально.,Это хороший выбор.

Услуги и регистрация

Чтобы ваши игрушки ожили, вам понадобится доступ к определенным сервисам искусственного интеллекта. Для этого проекта я решил использовать Alilinger AI Open Service, поскольку он предоставляет бесплатные услуги распознавания и синтеза речи. Вы также можете выбрать другие услуги. Для больших языковых моделей я использовал локально развернутую версию llama2. Вы можете выбирать в соответствии со своими предпочтениями. В принципе они совместимы.

  1. TTS (текст в текст): эффект распознавания голоса Али по-прежнему хорош.,Достаточно для удовлетворения ежедневных потребностей в общении.
  2. LLM (большая языковая модель): используйте для понимания и генерации текстовых ответов, подобных человеческим.,Конечно, каждая Моделья это пробовала.,В общем, имеет смысл быть дорогим.,Но я все же решил развернуть llama2 локально.
  3. STT (голос в текст): Эффект синтеза голоса Али по-прежнему хорош.,Есть сотни персонажей для переключения между ними.,Знакомьтесь с разными интересами и хобби.

Если вы используете различные большие языковые модели, вам необходимо зарегистрироваться и получить ключ API, аналогичный sk-xxx. Это ваши учетные данные для вызова API. Для использования открытого сервиса Lingjie AI от Alibaba вам необходимо зарегистрироваться, создать приложение и получить app_key, access_key_id и access_key_secret.

03 – Соберите игрушки

Теперь пришло время собрать все детали воедино и сделать свою собственную игрушку LLM (большая языковая модель).

Общие шаги следующие. Рекомендуется сначала просмотреть видеоурок [1].

  1. Обратите внимание, что запись и воспроизведение G6 выполняются нормально.
  2. Используйте отвертку, чтобы открутить G6 обратно из 6 винты.
  3. Будьте осторожны с Открыть G6 из футляра.,Отключите все разъемы на материнской плате,Сначала отключите вилку питания,На пробке есть клей,Чтобы аккуратно разрезать, можно использовать канцелярский нож.,Следите за тем, чтобы не порезать руки.
  4. Отвинтите материнскую платуиз 4 винты и снимите материнскую плату.
  5. использовать FoloToy из материнской платы замените оригинальную материнскую плату и затяните ее 3 винты для фиксации.
  6. подключить микрофон、лампа、ораторирозетка,Наконец подключите его к розетке.
  7. После включения во все розетки,Не закрывайте корпус и не вкручивайте винты сразу. Первое Открыть/выключить выключатель на хвосте кролика,Посмотреть новую установкуизлампа Является ли это возможным Открытьи медленно мигает синим цветом。
  8. Если проблем нет, установите корпус и затяните винты, чтобы завершить процесс замены.

04 — Настройка сервера

Мощная серверная поддержка — это то, что позволяет вам LLM Игрушка понимает и реагирует на команды и клавиши. В этом разделе вы узнаете, как клонировать базу кода сервера, настраивать сервер и запускать его. Docker Контейнер, обеспечивающий стабильную поддержку серверной части ваших игрушек.

Сначала из GitHub клонировать Folo серверкодовая база。

Язык кода:javascript
копировать
git clone git@github.com:FoloToy/folotoy-server-self-hosting.git

затем в файле docker-compose.yml измените базовую конфигурацию сервера на свою собственную конфигурацию.

имя

описывать

Пример

AUDIO_DOWNLOAD_URL

URL-адрес аудиофайла.

http://192.168.x.x:8082

SPEECH_UDP_SERVER_HOST

сервериз IP адрес.

192.168.x.x

LLM_TYPE

Тип услуги LLM

ollama

OLLAMA_API_BASE

API-адрес LLM

http://host.docker.internal:11434

OLLAMA_MODEL

Модель LLM

llama2

STT_TYPE

Тип службы распознавания речи

aliyun-asr

ALIYUN_ASR_ACCESS_KEY_ID

access_key_id распознавания речи Alibaba Cloud

xxx

ALIYUN_ASR_ACCESS_KEY_SECRET

access_key_secret распознавания речи Alibaba Cloud

xxx

ALIYUN_ASR_APP_KEY

Приложение распознавания речи Alibaba Cloud app_key

xxx

TTS_TYPE

Тип службы синтеза речи

aliyun-tts

ALIYUN_TTS_ACCESS_KEY_ID

Синтез речи Alibaba Cloud access_key_id

xxx

ALIYUN_TTS_ACCESS_KEY_SECRET

Синтез речи Alibaba Cloud access_key_secret

xxx

ALIYUN_TTS_APP_KEY

Синтез речи Alibaba Cloud app_key

xxx

Примечание. Вы можете использовать ту же конфигурацию для распознавания и синтеза речи Alibaba Cloud.

затем в config/roles.json Файл конфигурации вашей роли, вот минимум один пример, полную конфигурацию см. FoloToy документ.

Язык кода:javascript
копировать
{
  "1": {
    "start_text": "Hello, I'm Figure 3000. What can I do for you?",
    "prompt": "You are a helpful assistant."
  }
}

Затем запустите докер-контейнер.

Язык кода:javascript
копировать
docker compose up -d

Я запускаю это на своей машине Folo Сервер, если вы хотите, чтобы существование работало в облаке, операция будет практически такой же. Следует отметить одну вещь: вам необходимо 1883、8082、8085、18083 и 8083 Порт открыт для общедоступной сети, и у большинства поставщиков облачных услуг есть настройки брандмауэра, которые можно настроить в консоли.

Для получения дополнительной информации обратитесь к документации FoloToy[2].

05 — Запустите LLM локально.

Запускать большие языковые модели локально — это весело. Вы можете запускать Llama 2, Gemma и все виды крупных моделей с открытым исходным кодом со всего мира, даже модели, которые вы обучили самостоятельно. С олламой вы можете сделать это легко. Сначала установите ollama, а затем выполните следующую команду, чтобы запустить модель Llama 2.

Язык кода:javascript
копировать
ollama run llama2

Затем измените конфигурацию роли, чтобы использовать локальную Модель LLM。

Язык кода:javascript
копировать
{
  "1": {
    "start_text": "Hello, what can I do for you?",
    "prompt": "You are a helpful assistant.",
    "llm_type": "ollama",
    "llm_config": {
      "api_base": "http://host.docker.internal:11434",
      "model": "llama2"
    }
  }
}

api_base должен быть твоим ollama адрес сервера, не забудьте перезагрузить Folo сервер, чтобы изменения вступили в силу.

Язык кода:javascript
копировать
docker compose restart folotoy

Это так просто, вы можете изменить его на Gemma или другая модель,Очень удобно. я большую часть модели пробовал сам,в настоящий моментgemma:7b Он самый ароматный, жду Маска Grok-1。

06 — Ваш обмен игрушками

Когда все будет готово, пришло время поработать с вашей игрушкой LLM. Включите переключатель на задней стороне игрушки, чтобы включить ее, а синие мигающие индикаторы в ушах означают, что игрушка перешла в режим сопряжения.

Включите телефон или компьютер и выберите беспроводную сеть «FoloToy-xxxx». Через некоторое время ваш телефон или компьютер автоматически откроет страницу конфигурации, где вы сможете установить WiFi Сеть (SSID и пароль) и MQTT адрес сервера (нравиться 192.168.x.x) и номер порта (оставьте значение по умолчанию 1883)。

После завершения конфигурации и подключения к серверу,Нажмите большую круглую кнопку посередине, чтобы начать разговор. после того, как ты перестанешь говорить,FoloToy Прозвучит звуковой сигнал, оповещающий об окончании записи.

7 маленьких круглых кнопок вокруг него — это кнопки переключения персонажей. После щелчка переключение ролей вступает в силу немедленно.

07 – Отладка

Будь то сервер или игрушка,Вы можете столкнуться с некоторыми техническими проблемами. В этом разделе представлены некоторые основные советы по отладке инструмента.,Поможем диагностировать и решить возможные проблемы,Убедитесь, что вы LLM Игрушка работает плавно.

серверотлаживать

Чтобы просмотреть журнал сервера, выполните следующую команду.

Язык кода:javascript
копировать
docker compose logs -f

существовать docker-compose.yml Можно установить в файле LOG_LEVEL для контроля уровня журнала.

Отладка игрушек

Folo Toy предоставляет простой метод отладки на основе последовательного порта USB. Вы можете использовать веб-инструмент Folo Toy для отладки игрушки.

  1. Используйте USB-кабель для подключения игрушки к компьютеру.
  2. Открыть Folo Toy Web Инструменты и нажмите кнопку «Консоль», чтобы подключиться к игрушке.
  3. После подключения,Вы должны иметь возможность видеть устройство из журналов реального времени в существующей консоли.

Также на игрушке имеется светодиодная подсветка, которая показывает состояние игрушки разными цветами.

Отладка MQTT

Открыть EMQX Dashboard исследовать MQTT сообщения и статус подключения устройства и т. д. Имя пользователя по умолчанию админ, пароль public。в любом случае,существовать После входа в систему измените свой пароль наодин Безопасностьизпароль。

08 – Расширенная настройка.

В Folo Toy также есть множество продвинутых способов игры. Вот краткое введение, которое может вдохновить других. Эта часть подходит для пользователей с определенной технической базой. Если вы новичок, можете сначала ее пропустить.

Использование CloudFlare AI Gateway

Cloudflare из AI Шлюз позволяет получить доступ к AI Следует использоватьиз видимости и контроля. Подключив ваше устройство к AI шлюз, вы можете понять, как люди используют ваше изложение, анализируя и собирая журналы, а затем получая прибыль и спользовать кеширование, ограничение скорости, повтор запроса, откат модели и другие функции для управления размером приложения. Сначала вам нужно создать один новый из AI шлюз.

затем отредактируйте docker-compose.yml файл, будет OPENAI_OPENAI_API_BASE Изменение для вас из AI Адрес шлюза, например:

Язык кода:javascript
копировать
services:
  folotoy:
    environment: OPENAI_OPENAI_API_BASE=https://gateway.ai.cloudflare.com/v1/${ACCOUNT_TAG}/${GATEWAY}/openai

Тогда у вас будет одна панель управления,Посмотреть про запросы, жетон, кэш, Ошибка и стоимость и индикатор.

Настройка голоса персонажа

Изменив роль Конфигурация в файле из voice_name Поля, в которых вы можете настроить роль голоса.

Edge TTS предлагает множество вариантов, например этот:

Язык кода:javascript
копировать
{
  "1": {
    "tts_type": "edge-tts",
    "tts_config": {
      "voice_name": "zh-CN-shaanxi-XiaoniNeural"
    }
  }
}

Таким образом, ваш персонаж сможет говорить на диалекте Шэньси.

Есть кое-что повеселее,Синтез голоса Alibaba Cloud поддерживает персонализированную настройку голоса,Вы можете тренироваться своим голосом,затем в файле конфигурации персонажа можно использовать свой голос. Таким образом, вы сами сможете рассказывать детям истории.,Разве это не интересно?

После завершения звуковой тренировки вы получите звуковой звонок ID, поставь это ID Поместите его в файл конфигурации персонажа. voice_id Просто поля.

Язык кода:javascript
копировать
{
  "1": {
    "tts_type": "aliyun-tts",
    "tts_config": {
      "voice_id": "voice-xxxxxxx"
    }
  }
}

Поддержка базы знаний

Для настройки более высокого уровня, например поддержки базы знаний. Рекомендуется использоватьиспользовать Dify, который включает в себя Backend as Service и LLMOps концепции, охватывающей строительство генеративных AI Нативное приложение использует необходимый стек основных технологий, включая один встроенный RAG двигатель. использовать Dify, вы можете самостоятельно развернуться на основе любой модели, например Assistants API и GPTs способности. Давайте сосредоточимся на встроенных RAG Механизм основан на формуле поиска и генерации Модель, которую можно использовать для таких задач, как вопросы и ответы, диалог и обобщение документов. Диди Включает различные встраивания на основе полнотекстовых индексов или векторных баз данных. RAG Возможность разрешить прямую загрузку PDF、TXT и другие текстовые форматы. Загрузите свою базу знаний, и вам не придется беспокоиться о том, что игрушки будут грязными, потому что они не знают базовых знаний.

dify Вы можете развернуть его самостоятельно или использовать напрямую. cloud Версия。существоватьFolo начальствоиз Конфигурациятоже очень просто:

Язык кода:javascript
копировать
{
  "1": {
    "llm_type": "dify",
    "llm_config": {
      "api_base": "http://192.168.52.164/v1",
      "key": "app-AAAAAAAAAAAAAAAAAAa"
    }
  }
}

Нестандартная форма игрушки

По принципу работы любую игрушку можно модифицировать. Фоло Toy Также предусмотрен осьминог. AI комплект разработки,Он может превратить любую обычную игрушку в умную игрушку для разговора. Этот чип маленький и легкий.,Легко помещается в любую игрушку.,Будь то плюшевые игрушки или пластиковые игрушки.,Или деревянная игрушка,Легко адаптируется.

я сделал кактус на диалекте Шэньси своими руками. Используйте свое воображение,Вы можете положить его в свои любимые игрушки,Начать работу не так уж и сложно:

  1. Положите игрушки Открыть
  2. Установите комплект разработки Octopus AI.
  3. закрой игрушку

Сервер все еще используется один раз.,Вы можете назначать разные роли разным игрушкам через sn,Я не буду подробно останавливаться на этом здесь.,Вы можете проверить официальный сайт в документе «Конфигурация».

Инструкции по безопасности

пожалуйста, обрати внимание,Никогда не публикуйте ключ на общедоступной платформе, такой как GitHub.,В противном случае ключ может быть использован неправильно. Если ваш ключ скомпрометирован,Пожалуйста, немедленно удалите и заново создайте новые ключи на существующей платформе.

Вы также можете существовать docker-compose.yml посланникиспользоватьпеременные среды,И существование передается при запуске контейнера,Чтобы избежать раскрытия ключей в существующем коде.

Язык кода:javascript
копировать
services:
  folotoy:
    environment:
      - OPENAI_OPENAI_KEY=${OPENAI_OPENAI_KEY}
Язык кода:javascript
копировать
OPENAI_OPENAI_KEY=sk-...i7TL docker compose up -d

если ты хочешь сделать FoloToy серверсуществовать общедоступен в Интернете, и его настоятельно рекомендуется улучшить. EMQX Служба безопасности и разрешает доступ только через пароль. EMQX。

09 — Расскажите о преимуществах для поклонников.

DIY В ходе процесса возникали различные проблемы. FoloToy Я также связался с командой. Их техническая поддержка была очень хорошей, и они помогли решить многие проблемы. Если вам нужна эта игрушка, вы можете поискать ее прямо на Taobao. FoloToy(AI Intelligent Toys), товары действительно хорошие, вот на них дружеская акция.

Купить Folo Toy Товары, существующие, предоставляют промокод яиз при обращении в службу поддержки клиентов. F-001-2,Вы можете воспользоваться скидкой。Купить Fofo G6 Вся машина может сэкономить 20 Юань,Купить Octopus Dev Suit может спасти 15 Юаней, большинство других продуктов также могут получить скидку 10 юаней, пожалуйста, свяжитесь со службой поддержки клиентов для получения подробной информации.

ссылка:

[1]: https://www.bilibili.com/video/BV1kC4y157od/

[2]:https://docs.folotoy.com/zh/docs/configuration/roles_config/

boy illustration
Неразрушающее увеличение изображений одним щелчком мыши, чтобы сделать их более четкими артефактами искусственного интеллекта, включая руководства по установке и использованию.
boy illustration
Копикодер: этот инструмент отлично работает с Cursor, Bolt и V0! Предоставьте более качественные подсказки для разработки интерфейса (создание навигационного веб-сайта с использованием искусственного интеллекта).
boy illustration
Новый бесплатный RooCline превосходит Cline v3.1? ! Быстрее, умнее и лучше вилка Cline! (Независимое программирование AI, порог 0)
boy illustration
Разработав более 10 проектов с помощью Cursor, я собрал 10 примеров и 60 подсказок.
boy illustration
Я потратил 72 часа на изучение курсорных агентов, и вот неоспоримые факты, которыми я должен поделиться!
boy illustration
Идеальная интеграция Cursor и DeepSeek API
boy illustration
DeepSeek V3 снижает затраты на обучение больших моделей
boy illustration
Артефакт, увеличивающий количество очков: на основе улучшения характеристик препятствия малым целям Yolov8 (SEAM, MultiSEAM).
boy illustration
DeepSeek V3 раскручивался уже три дня. Сегодня я попробовал самопровозглашенную модель «ChatGPT».
boy illustration
Open Devin — инженер-программист искусственного интеллекта с открытым исходным кодом, который меньше программирует и больше создает.
boy illustration
Эксклюзивное оригинальное улучшение YOLOv8: собственная разработка SPPF | SPPF сочетается с воспринимаемой большой сверткой ядра UniRepLK, а свертка с большим ядром + без расширения улучшает восприимчивое поле
boy illustration
Популярное и подробное объяснение DeepSeek-V3: от его появления до преимуществ и сравнения с GPT-4o.
boy illustration
9 основных словесных инструкций по доработке академических работ с помощью ChatGPT, эффективных и практичных, которые стоит собрать
boy illustration
Вызовите deepseek в vscode для реализации программирования с помощью искусственного интеллекта.
boy illustration
Познакомьтесь с принципами сверточных нейронных сетей (CNN) в одной статье (суперподробно)
boy illustration
50,3 тыс. звезд! Immich: автономное решение для резервного копирования фотографий и видео, которое экономит деньги и избавляет от беспокойства.
boy illustration
Cloud Native|Практика: установка Dashbaord для K8s, графика неплохая
boy illustration
Краткий обзор статьи — использование синтетических данных при обучении больших моделей и оптимизации производительности
boy illustration
MiniPerplx: новая поисковая система искусственного интеллекта с открытым исходным кодом, спонсируемая xAI и Vercel.
boy illustration
Конструкция сервиса Synology Drive сочетает проникновение в интрасеть и синхронизацию папок заметок Obsidian в облаке.
boy illustration
Центр конфигурации————Накос
boy illustration
Начинаем с нуля при разработке в облаке Copilot: начать разработку с минимальным использованием кода стало проще
boy illustration
[Серия Docker] Docker создает мультиплатформенные образы: практика архитектуры Arm64
boy illustration
Обновление новых возможностей coze | Я использовал coze для создания апплета помощника по исправлению домашних заданий по математике
boy illustration
Советы по развертыванию Nginx: практическое создание статических веб-сайтов на облачных серверах
boy illustration
Feiniu fnos использует Docker для развертывания личного блокнота Notepad
boy illustration
Сверточная нейронная сеть VGG реализует классификацию изображений Cifar10 — практический опыт Pytorch
boy illustration
Начало работы с EdgeonePages — новым недорогим решением для хостинга веб-сайтов
boy illustration
[Зона легкого облачного игрового сервера] Управление игровыми архивами
boy illustration
Развертывание SpringCloud-проекта на базе Docker и Docker-Compose