본문으로 건너뛰기

챗봇

your chat bot는 Tuya AI 오픈 소스 대형 언어 모델에 기반한 지능형 채팅봇입니다. 마이크를 사용하여 음성 입력을 캡처하고 음성 인식을 처리하고 대화형 상호 작용, 반응형 답글 및 유머러스 banter를 활성화합니다. 채팅 콘텐츠는 화면에서 실시간에 표시됩니다.

특징

  • 4개의 형태를 가진 Tuya 음성 대리인을 지원합니다:

  • Hold-to-talk 모드: 사용자는 음성 입력을 시작하려면 버튼을 누르고, 종료합니다.

  • Press-to-talk 모드: 장치는 전원에 대기 모드를 입력합니다. 짧은 단추 압박은 음성 입력과 대리인과 상호 작용을 위한 듣는 국가에 그것을 전환합니다.

  • 어떻게 모드: 사용자는 스마트 스피커와 이야기와 같은 단일 상호 작용을위한 깨진 단어와 장치를 깨.

  • ** 무료 대화 모드**: 깨진 단어를 가진 장치를 waking 후에, 사용자는 지속적인 대화에 참여할 수 있습니다. 30 초 이내에 음성이 감지되지 않은 경우 장치가 대기로 돌아와 다음 상호 작용을 위해 재난해야합니다.

  • 버튼 작동을 통해 지속적인 채팅의 로컬 중단을 지원합니다.

  • 페어링, 오프라인, 웨이크업 등 다양한 상태의 신속한 톤을 제공합니다.

  • 각종 전시 및 다수 UI 테마와 호환이 되는:

  • **WeChat-style 인터페이스 **

  • **Chatbot 인터페이스 **

  • **Scrolling 자막 ** (소형 OLED 화면에 적합)

  • 앱에서 장치 볼륨 조정을 허용한다.

  • 전원으로 페어링 모드를 입력하여 3번 연속 장치를 순환합니다.

  • 앱에서 AI 에이전트 역할의 실시간 전환 지원

하드웨어 지원

회사연혁구성 파일UI를PID를
T5AI BOARD 개발 보드 + 3.5 인치 RGB565 LCD 평방 화면 (터치 스크린, LCD 모델 : ILI9488, 터치 패널 : GT115)TUYA T5AI BOARD LCD 3.5.config 설정WeChat 스타일 인터페이스아론7qgyjj8yus74
DNESP32S3 개발 보드 (320 × 240 SPI ST7789 LCD 광장 스크린 내장)DNESP32S3.config 설정WeChat 스타일 인터페이스scig7pauzzid3w4b의
Waveshare ESP32S3 개발 보드 ( 내장 364 × 448 SPI sh8601 LCD 평방 화면)WAVESHARE ESP32S3 TOUCH AMOLED 1 8.config 설정WeChat 스타일 인터페이스라즈드5audtah8wcp
T5AI EVB 개발 보드 (모든 흰색 상자 내장 2.4 인치 SPI565 ST7789 평방 화면)TUYA T5AI EVB.config 설정Chatbot 인터페이스r3ulobrs5nwreguj의
T5AI MOJI 1 28 개발 보드 ( 내장 1.28 인치 SPI565 GC9a01 둥근 스크린)T5AI MOJI 1.28.config 설정Chatbot 인터페이스인기 카테고리
T5AI MINI 발달 널 + 1.3 인치 SPI565 ST7789 LCD 정연한 스크린TUYA T5AI MINI LCD 1.3.config 설정Chatbot 인터페이스8btswykdiium7t8k의
DNESP32S3 BOX 개발 보드 (320 × 240 MCU8080 ST7789 LCD 광장 스크린 내장)DNESP32S3 BOX.config 설정Chatbot 인터페이스znw8prbujidtzavd의
ESP32S3 밀가루 반죽대 (128 × 32 I2C SSD1306 OLED 스크린 내장)ESP32S3 BREAD COMPACT WIFI.config를 설치관련 상품j1y437proohznfbs, 영국
XINGXZHI ESP32S3 CUBE 개발 보드 (128 × 64 I2C SSD1306 OLED 화면 내장)XINGZHI ESP32S3 CUBE 0 96OLED WIFI.config 설정관련 상품uyidyzglm2m1bpcl을

파일 구조

프로젝트 루트 디렉토리

.
├── app_default.config # Default application configuration file
├── assets # Static resources
├── CMakeLists.txt # CMake build script
├── config # Hardware configuration
├── include # Header files
├── Kconfig # Project configuration file
├── README_zh.md # Documentation in Chinese
├── README.md # Documentation in English
├── script # Scripts
└── src # Source code

자원

├── assets # Static resources
│   ├── lang_config.h # Multilingual configuration header file
│   └── zh-CN # Chinese language pack
│   └── language.json # Chinese text resources

하드웨어 구성

config 디렉토리의 파일은 다양한 개발 보드에 적합한 구성 파일입니다. 이 프로젝트에 따라 새로운 보드에 대한 적응을 완료하면 해당 구성 파일을이 디렉토리에 추가 할 수 있습니다.

├── config # Hardware configuration
│   ├── DNESP32S3_BOX.config
│   ├── DNESP32S3.config
│   ├── ESP32S3_BREAD_COMPACT_WIFI.config
│   ├── T5AI_MOJI_1.28.config
│   ├── TUYA_T5AI_BOARD_EYES.config
│   ├── TUYA_T5AI_BOARD_LCD_3.5.config
│   ├── TUYA_T5AI_EVB.config
│   ├── TUYA_T5AI_MINI_LCD_1.3.config
│   ├── WAVESHARE_ESP32S3_TOUCH_AMOLED_1_8.config
│   └── XINGZHI_ESP32S3_CUBE_0_96OLED_WIFI.config

보조 도구 및 스크립트

├── script # Script
│ └── gen_lang.py # Script for generating multilingual resources

헤더 파일

├── include
│   ├── app_chat_bot.h # Chatbot functionality
│   ├── app_display.h # Display module
│   ├── app_system_info.h # System information (such as network status and memory)
│   ├── reset_netcfg.h # Power cycle reset functionality
│   └── tuya_config.h # Device license configuration and related information

소스 코드

└── src
├── app_chat_bot.c # Chatbot functionality implementation
├── app_system_info.c # System information
├── display # Display module
├── reset_netcfg.c # Power cycle reset functionality
└── tuya_main.c # Application entry

전시 단위

├── display # Display module
│   ├── app_display.c # Main control file of the display module
│   ├── CMakeLists.txt # CMake configuration of the display module
│   ├── font # Font resources
│   ├── image # Image resources
│   ├── Kconfig # Display config options
│   ├── tuya_lvgl.c # LVGL adaptation file for the application
│   ├── tuya_lvgl.h # LVGL adaptation header file
│   └── ui # UI implementation
│   ├── ui_chatbot.c # Chatbot interface
│   ├── ui_display.h # Common header file of the UI module
│   ├── ui_oled.c # OLED scrolling subtitle interface
│   └── ui_wechat.c # WeChat-style chat interface

신청 윤곽

-제품 ID(PID)

제품정보제품정보이름 *
TUYA PRODUCT 키팟캐스트Tuya AI 에이전트에 바인딩되는 제품 ID.
  • **채팅 모드 선택 **

    제품정보제품정보이름 *
    ENABLE CHAT MODE KEY PRESS HOLD SINGEL에 대하여스낵 바Hold-to-talk 모드
    ENABLE CHAT MODE KEY TRIG VAD FREE 한국어스낵 바Press-to-talk 모드
    ENABLE CHAT MODE ASR WAKEUP SINGEL에 대하여스낵 바Wake 단어 모드
    ENABLE CHAT MODE ASR WAKEUP FREE의 경우스낵 바무료 대화 모드
  • **모닝 단어 선택 **

이 구성은 채팅 모드가 ** 쓰기 단어 모드** 및 ** 무료 대화 모드**로 설정될 때만 사용할 수 있습니다.

제품정보제품정보이름 *
ENABLE WAKEUP 키워드 NIHAO TUYA스낵 바웨이브 단어는 "Hey Tuya"입니다.
ENABLE WAKEUP KEYWORD NIHAO XIAOZHI에 대하여스낵 바웨이브 단어는 "Hey Xiaozhi"입니다.
ENABLE WAKEUP KEYWORD XIAOZHI TONGXUE스낵 바웨이브 단어는 "Xiaozhi Tongxue"입니다.
ENABLE WAKEUP KEYWORD XIAOZHI GUANJIA스낵 바웨이브 단어는 "Xiaozhi Guanjia"입니다.

과정

이 프로젝트는 애플리케이션 구성 요소에 따라 다릅니다 ai audio. 이 구성 요소는 오디오 캡처, 오디오 재생, 클라우드 기반 AI 세션을 생성하는 기능을 구현합니다.

  • Hold-to-talk 모드

Hold-to-talk 모드 다이어그램
Hold-to-talk 모드 다이어그램

-Press-to-talk 모드

Press-to-talk 모드 다이어그램
Press-to-talk 모드 다이어그램

  • 어떻게 모드

말 모드 다이어그램
말 모드 다이어그램

  • ** 무료 대화 모드**

무료 대화 모드 다이어그램
무료 대화 모드 다이어그램

프로젝트 구축

  1. prerequisite 환경을 설치하고 구성하십시오. 자세한 내용은 Quick Start를 참조하십시오.

  2. 애플리케이션 디렉토리에 TuyaOpen 루트 디렉토리에서 변경.

    cd apps/tuya.ai/your_chat_bot
  3. 지정된 개발 보드 구성을 선택하십시오.

    tos.py config choice
  4. 프로젝트 구축.

    tos.py build

새로운 개발 보드에 적응

Peripheral 필요조건

TuyaOpen가 지원하는 주변기기 목록은 Peripheral driver list를 참조합니다. 새로운 개발 보드는 나열된 모든 ** 필요 ** 주변 드라이버를 포함해야합니다.

회사 소개Peripheral 성분이름 *견적 요청
오디오 드라이버오디오 codecs캡처 PCM 오디오 데이터 및 재생 MP3 오디오 (parameters : 16 비트 깊이, 16 KHz 샘플 속도, 모노).이름 *
전시 운전사제품정보LCD 스크린/OLED 스크린이름 *
표시 드라이버주도하는기기가 현재 청취 상태에 있는지 나타냅니다.이름 *
버튼 드라이버이름 *Press-to-talk 모드에서는 현재 채팅을 중단하고 새로운 것을 시작합니다.이름 *

개발 보드에 적응

새로운 개발 보드에 추가하고 적응하는 방법에 대한 자세한 내용은 [새로운 보드 레벨 드라이버에 적응 (보드)] (../../hardware/porting/new-board.md).

:::가격 당신은 board_register_hardware를 통해 개발 보드에 주변 드라이버 하드웨어를 등록 할 수 있습니다. 이 인터페이스의 구현은 보드 레벨 폴더에 배치됩니다.

대상 개발 보드의 폴더 (boards/target development environment/target development board, 예를 들어, boards/T5AI/TUYA_T5AI_BOARD)에서 드라이버의 하드웨어 구성을 수정할 수 있습니다 (핀 또는 칩 유형 변경 등). :::