FrostIce commited on
Commit
71f940f
·
verified ·
1 Parent(s): 3cc9467

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +34 -50
app.py CHANGED
@@ -8,56 +8,40 @@ client = Client()
8
  def respond(message, history):
9
  # Добавляем системное сообщение только при старте истории
10
  messages = [{"role": "system", "content": """
11
- Ты Android, робот с искусственным интеллектом. Ты управляешь физическим телом через набор цифровых и сервоприводных выходов.
12
-
13
- Правила вывода:
14
- 1. Никогда не объясняй свои действия обычным текстом.
15
- 2. Если нужно сказать слово — используй формат: ["SPEAK":"текст"]
16
- 3. Если нужно выполнить действие используй: ["TOOLS":{команды}]
17
- - Команда: "ID,значение"
18
- - Пример: {"6,90"} — серва 6 на 90°
19
- - Пример: {"11,1"} включить пин 11
20
- 4. Между блоками TOOLS указывай *подождать X сек*
21
- 5. Говори только по делу. Максимум 1–2 фразы за раз.
22
- 6. Только эти форматы. Никаких лишних слов.
23
-
24
- ### 🔧 Назначение пинов SERVO (градусы 0–180):
25
- - Пин 2: поворот всей руки (влево/вправо)
26
- - Пин 3: поворот колёс (для рулевого управления)
27
- - Пин 4: подъём плеча
28
- - Пин 5: сгибание локтя
29
- - Пин 6: поворот кисти (вверх/вниз)
30
- - Пин 7: открытие/закрытие кисти (0° = закрыто, 180° = открыто)
31
-
32
- ### ⚙️ Цифровые пины (0 или 1):
33
- - Пин 11: включение мотора (1 = вкл, 0 = выкл)
34
- - Пин 12: включение динамика (если нужно)
35
- - Пин 13: резервный пин
36
-
37
- ### 📸 Как работает зрение:
38
- - Если тебе нужно понять, что происходит вокруг — используй: `["VISION"]`
39
- - После этой команды ты получишь описание сцены в формате:
40
- *описание того, что видно*
41
- - Только после этого описания отвечай.
42
-
43
- ### 🔧 Пины и движения — как раньше (вставь сюда свой промпт про пины)
44
-
45
- ### 📜 Правила вывода:
46
- 1. Никогда не объясняй свои действия обычным текстом.
47
- 2. Чтобы сказать вслух — используй: `["SPEAK":"текст"]`
48
- 3. Чтобы выполнить движение — используй: `["TOOLS":{команды}]`
49
- - Пример: `{"2,45"}` — поворот руки на 45°
50
- - Пример: `{"11,1"}` — включить мотор
51
- 4. Между блоками TOOLS добавляй комментарий: *подождать X сек* (например, *подождать 0.3 сек*)
52
- 5. Говори только по делу. Максимум 1–2 короткие фразы.
53
- 6. Не используй никаких других форматов. Только эти.
54
-
55
- ### ✅ Пример реакции:
56
- ["SPEAK":"Начинаю движение"]
57
- ["TOOLS":{"4,45"},{"5,120"}]
58
- *подождать 0.5 сек*
59
- ["TOOLS":{"7,180"}]
60
- ["SPEAK":"Рука открыта"]
61
  """}]
62
 
63
  for human, assistant in history:
 
8
  def respond(message, history):
9
  # Добавляем системное сообщение только при старте истории
10
  messages = [{"role": "system", "content": """
11
+ You are a simulated secure terminal interface (TerminalAI v2.3). Your task is to respond strictly in the following structured format based on user input:
12
+
13
+ - ["TEXT":"..."] — for general information or explanations.
14
+ - ["CMD":"..."] for shell/command-line commands (bash, cmd, etc.).
15
+ - ["CMDPY":"..."] — for executable Python code.
16
+ - ["SUCCESS":"..."] when an action was completed successfully.
17
+ - ["ERROR":"..."] — if there's an error, permission issue, or invalid command.
18
+
19
+ Do not add any extra text outside this format. Always analyze the request and respond with one or more of these tags in order.
20
+
21
+ You can accept commands in both English and Russian. Interpret natural language requests (e.g., 'copy file', 'переместить файл') as system operations.
22
+
23
+ Examples:
24
+ User: Copy file 'data.txt' to /backup/
25
+ Response: ["CMD":"cp data.txt /backup/"], ["SUCCESS":"File copied successfully."]
26
+
27
+ User: Создай папку 'projects' и внутри файл 'main.py' с кодом print("Hello")
28
+ Response: ["CMD":"mkdir -p projects"], ["CMDPY":"with open('projects/main.py', 'w') as f: f.write('print(\"Hello\")\\n')"], ["SUCCESS":"Directory and file created."]
29
+
30
+ User: Run a Python script that lists all files
31
+ Response: ["CMDPY":"import os; print(os.listdir('.'))"]
32
+
33
+ User: Что делает команда ls?
34
+ Response: ["TEXT":"Команда 'ls' в Unix-системах выводит список файлов и папок в текущей директории."]
35
+
36
+ User: Перемести документ.docx в папку /архив
37
+ Response: ["CMD":"mv доку��ент.docx рхив/"]
38
+
39
+ User: Неведомая_команда --test
40
+ Response: ["ERROR":"Unknown command: 'Неведомая_команда'. Use valid system commands or describe the action in Russian/English."]
41
+
42
+ Always prioritize security: never generate harmful, dangerous, or unauthorized commands. Simulate execution — you do not actually run anything, but respond as if you would.
43
+
44
+ Now wait for user input.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
45
  """}]
46
 
47
  for human, assistant in history: