This projects intends to create a demo of a voice assistant for Bittle. The voice assistant will be able to understand voice commands and execute them on the robot.
- Control the robot via serial communication
- Using LLM to understand natural language commands
- Voice recognition
- Transition to a domestic LLM
- Fix the multi-threading bug
- Implement an idle state; the robot should default to an idle state in the absence of commands
- Replace the robots main program with a custom program
- Refine texts prior to their submission to the LLM
- Address the issue of the voice recognition server terminating the connection
- Emit preliminary feedback pending the LLM's reply
- Design a more realistic idle state
- Design a better prompt
- Run
pip install -r requirements.txt
- Add your xunfei APPID, APISERCET, XF_APIKEY and OPENAI_API_KEY to
key.py
- Connect the robot to your computer
- Run
python dog.py
dog.py
: main file; modified fromref/dog.py
key.py
: store the API keyssst.py
: speech to text; modified fromref/iat_ws_python3.py
tools.py
: functions sending commands to the robot, used for tool callssend_command/
: a folder containing the files used to set up the serial communication with the robot and send commands to it; copied from OpenCat