Alina commited on
Commit
b30c470
·
unverified ·
2 Parent(s): 927fd13 ce5b8b9

Merge pull request #56 from pollen-robotics/add-diagram-readme

Browse files
README.md CHANGED
@@ -2,7 +2,15 @@
2
 
3
  Conversational demo for the Reachy Mini robot combining OpenAI's realtime APIs, vision pipelines, and choreographed motion libraries.
4
 
5
- ![Reachy Mini Dance](src/reachy_mini_conversation_demo/images/reachy_mini_dance.gif)
 
 
 
 
 
 
 
 
6
 
7
  ## Overview
8
  - Real-time audio conversation loop powered by the OpenAI realtime API and `fastrtc` for low-latency streaming.
 
2
 
3
  Conversational demo for the Reachy Mini robot combining OpenAI's realtime APIs, vision pipelines, and choreographed motion libraries.
4
 
5
+ ![Reachy Mini Dance](docs/assets/reachy_mini_dance.gif)
6
+
7
+ ## Architecture
8
+
9
+ The demo follows a layered architecture connecting the user, AI services, and robot hardware:
10
+
11
+ <p align="center">
12
+ <img src="docs/assets/conversation_demo_arch.svg" alt="Architecture Diagram" width="600"/>
13
+ </p>
14
 
15
  ## Overview
16
  - Real-time audio conversation loop powered by the OpenAI realtime API and `fastrtc` for low-latency streaming.
src/reachy_mini_conversation_demo/images/reachymini_avatar.png → docs/assets/conversation_demo_arch.svg RENAMED
File without changes
{src/reachy_mini_conversation_demo/images → docs/assets}/reachy_mini_dance.gif RENAMED
File without changes
docs/scheme.md ADDED
@@ -0,0 +1,58 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ config:
3
+ layout: dagre
4
+ flowchart:
5
+ htmlLabels: true
6
+ ---
7
+ flowchart TB
8
+ User(["<span style='font-size:16px;font-weight:bold;'>User</span><br><span style='font-size:13px;color:#01579b;'>Person interacting with system</span>"])
9
+ -- audio stream -->
10
+ UI@{ label: "<span style='font-size:16px;font-weight:bold;'>UI Layer</span><br><span style='font-size:13px;color:#0277bd;'>Gradio/Console</span>" }
11
+
12
+ UI -- audio stream -->
13
+ OpenAI@{ label: "<span style='font-size:17px;font-weight:bold;'>gpt-realtime API</span><br><span style='font-size:13px; color:#7b1fa2;'>Audio+Tool Calls+Vision</span>" }
14
+
15
+ OpenAI -- audio stream -->
16
+ Motion@{ label: "<span style='font-size:16px;font-weight:bold;'>Motion Control</span><br><span style='font-size:13px;color:#f57f17;'>Audio Sync + Tracking</span>" }
17
+
18
+ OpenAI -- tool calls -->
19
+ Handlers@{ label: "<span style='font-size:16px;font-weight:bold;'>Tool Handlers</span><br><span style='font-size:12px;color:#f9a825;'>move_head, camera, head_tracking,<br/>dance, play_emotion, do_nothing</span>" }
20
+
21
+ Handlers -- movement
22
+ requests --> Motion
23
+
24
+ Handlers -- camera frames, face tracking -->
25
+ Camera@{ label: "<span style='font-size:16px;font-weight:bold;'>Camera Worker</span><br><span style='font-size:13px;color:#f57f17;'>Frame Buffer + Face Tracking</span>" }
26
+
27
+ Handlers -. image for
28
+ analysis .-> OpenAI
29
+
30
+ Camera -- face tracking --> Motion
31
+
32
+ Camera -. frames .->
33
+ Vision@{ label: "<span style='font-size:16px;font-weight:bold;'>Vision Processor</span><br><span style='font-size:13px;color:#7b1fa2;'>Local VLM (optional)</span>" }
34
+
35
+ Vision -. description .-> Handlers
36
+
37
+ Robot@{ label: "<span style='font-size:16px;font-weight:bold;'>reachy_mini</span><br><span style='font-size:13px;color:#c62828;'>Robot Control Library</span>" }
38
+ -- camera
39
+ frames --> Camera
40
+
41
+ Motion -- commands --> Robot
42
+
43
+ Handlers -- results --> OpenAI
44
+
45
+ User:::userStyle
46
+ UI:::uiStyle
47
+ OpenAI:::aiStyle
48
+ Motion:::coreStyle
49
+ Handlers:::toolStyle
50
+ Camera:::coreStyle
51
+ Vision:::aiStyle
52
+ Robot:::hardwareStyle
53
+ classDef userStyle fill:#e1f5fe,stroke:#01579b,stroke-width:3px
54
+ classDef uiStyle fill:#b3e5fc,stroke:#0277bd,stroke-width:2px
55
+ classDef aiStyle fill:#e1bee7,stroke:#7b1fa2,stroke-width:3px
56
+ classDef coreStyle fill:#fff9c4,stroke:#f57f17,stroke-width:2px
57
+ classDef hardwareStyle fill:#ef9a9a,stroke:#c62828,stroke-width:3px
58
+ classDef toolStyle fill:#fffde7,stroke:#f9a825,stroke-width:1px
src/reachy_mini_conversation_demo/images/user_avatar.png DELETED

Git LFS Details

  • SHA256: e97ca125a86bacdaa41c8dca88abd9ca746fd5c9391eda24249c012432b0219b
  • Pointer size: 132 Bytes
  • Size of remote file: 1.11 MB