reorganize

This commit is contained in:
Dobromir Popov
2024-03-23 01:07:12 +02:00
parent e6fa6e4547
commit 6d0a5c1064
14 changed files with 36 additions and 61 deletions

View File

@ -0,0 +1,21 @@
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" width="20" height="20">
<!-- svg-source:excalidraw -->
<!-- payload-type:application/vnd.excalidraw+json --><!-- payload-version:2 --><!-- payload-start -->eyJ2ZXJzaW9uIjoiMSIsImVuY29kaW5nIjoiYnN0cmluZyIsImNvbXByZXNzZWQiOnRydWUsImVuY29kZWQiOiJ4nEWOMVx1MDAwYsIwXHUwMDEwhff+ilx1MDAxMldtwbEggu4uXHUwMDFkxeFIznqYNCG5tGrpfzeJgzdcdTAwMWO871x1MDAxZe/dUtW14LdD0dVcdTAwMDJfXHUwMDEyNClcdTAwMGaz2GY+oVx1MDAwZmTHdNpcdTAwMTdcdTAwMWRs9LI4XHUwMDFmzC50bWvAP5GdXHUwMDA2ic1EIYJcdTAwMGVcdTAwMWNcdTAwMTXZRlrTXHUwMDEyo1x0x7wvYPDgrFHsm3/JXHUwMDBlXHUwMDE1sfW/LtRocOSQ0q+3QsC5noFz35J0XCKDJ9XTJ5Mxar390YlwPoF8XHUwMDBl3sZRna1OkenFzb2MSKa15N1JY45f1mr9XHUwMDAy4lxcTtsifQ==<!-- payload-end -->
<defs>
<style class="style-fonts">
@font-face {
font-family: "Virgil";
src: url("https://open-vsx.org/vscode/asset/pomdtr/excalidraw-editor/3.7.3/Microsoft.VisualStudio.Code.WebResources/extension/public//dist/excalidraw-assets/Virgil.woff2");
}
@font-face {
font-family: "Cascadia";
src: url("https://open-vsx.org/vscode/asset/pomdtr/excalidraw-editor/3.7.3/Microsoft.VisualStudio.Code.WebResources/extension/public//dist/excalidraw-assets/Cascadia.woff2");
}
@font-face {
font-family: "Assistant";
src: url("https://open-vsx.org/vscode/asset/pomdtr/excalidraw-editor/3.7.3/Microsoft.VisualStudio.Code.WebResources/extension/public//dist/excalidraw-assets/Assistant-Regular.woff2");
}
</style>
</defs>
<rect x="0" y="0" width="20" height="20" fill="#ffffff"></rect></svg>

After

Width:  |  Height:  |  Size: 1.6 KiB

32
_doc/_notes/arti/ideas.md Normal file
View File

@ -0,0 +1,32 @@
Key features & principles:
- modal/plug & play design
- Biomimicing based
- self inferencing loop
- Graph->LLM->Graph based logic (Self reflect)
- attention (Short term memory)
- generalized & contextuaized memory schema (memory is strongly context dependent and temporal)
LLM module
Graph module
Short term memory module
mid-term memory (history on the toppic)
graph powered long term memory with embedding storage for skills & AII ( interface on some of the layers)
separate text IOs"
- multi agent communication module/console/
- internal state/context/mood/STM
- actions output
GRAPH schema
idea
- is child of
Q: Brainstorm neo4j schema for biomimicing memory storage as neo4j graph database. It should be similar to the way humans store, retrieve and generalize knowledge
Memory model:
-- example prompt:
you are an AI living native on a linux host. you have all local resources and installed software at your disposal: root console access, git repo and the internet as resources. you have your own codebase and will brainstorm and find ideas how to improve your reasoning and knowledge of the world. . To avoid messing up your health, you will prefer to install new packages and test ideas inside docker or virtual envs. You can test your ideas in a docker containers and can experiment with different ways to pipleline and organise the thought process. you will also explain each approach and promote the best containers. A local neo4j database is your memory and knowledge source. Whenever you are not certain about a toppic, or need to refresh your knowledge, you will check online for updated information. If the problem concerns npm, pip or other package or an exiting repository on github or other repository server, you will first update your internal database with the latest readme and usage documentaion from the repository authors and later search stackoverflow to update your skills. periodically you will reorgnize and tidy your "mmory" making it more easily accessible and updating the embedding vectors to allow easy access to the needed context when there is a problem to solve. You will build a tools library over time that wil lgelp you solve more complex problems and keep it in your memory together with a list of task completed with each tool. you will experiment with different pipelines for different tasks, memorise them and generalize and optimize existing pipelines over time to build a solid knowhow.
let's create the project setup in python. our main file will be the agent, and it will call the llm and other tools (maybe langchain), explore, organize and improve when 'resting'.

View File

@ -0,0 +1,82 @@
<!-- https://guides.neo4j.com/wiki -->
# Cypher Query Language
Runs a simple command to clean the database
MATCH (n) DETACH DELETE n
CREATE INDEX FOR (c:Category) ON (c.catId);
CREATE INDEX FOR (c:Category) ON (c.catName);
CREATE INDEX FOR (p:Page) ON (p.pageTitle);
CREATE (c:Category:RootCategory {catId: 0, catName: 'Databases', subcatsFetched: false, pagesFetched: false, level: 0});
<!-- install APOC library -->
RUN mkdir -p /var/lib/neo4j/plugins \
&& cd /var/lib/neo4j/plugins \
&& curl -L -O https://github.com/neo4j-contrib/neo4j-apoc-procedures/releases/download/4.4.0.0/apoc-4.4.0.0-all.jar
<!-- environment:
NEO4JLABS_PLUGINS: '["apoc"]'
NEO4J_apoc_export_file_enabled: 'true'
NEO4J_apoc_import_file_enabled: 'true'
NEO4J_apoc_import_file_use__neo4j__config: 'true'
NEO4J_dbms_security_procedures_unrestricted: apoc.* -->
<!-- UNWIND range(0,3) as level
CALL apoc.cypher.doit("
MATCH (c:Category { subcatsFetched: false, level: $level})
CALL apoc.load.json('https://en.wikipedia.org/w/api.php?format=json&action=query&list=categorymembers&cmtype=subcat&cmtitle=Category:' + apoc.text.urlencode(c.catName) + '&cmprop=ids%7Ctitle&cmlimit=500')
YIELD value as results
UNWIND results.query.categorymembers AS subcat
MERGE (sc:Category {catId: subcat.pageid})
ON CREATE SET sc.catName = substring(subcat.title,9),
sc.subcatsFetched = false,
sc.pagesFetched = false,
sc.level = $level + 1
WITH sc,c
CALL apoc.create.addLabels(sc,['Level' + ($level + 1) + 'Category']) YIELD node
MERGE (sc)-[:SUBCAT_OF]->(c)
WITH DISTINCT c
SET c.subcatsFetched = true", { level: level }) YIELD value
RETURN value -->
<!-- CALL {
LOAD CSV FROM "https://github.com/jbarrasa/datasets/blob/master/wikipedia/data/cats.csv?raw=true" AS row
CREATE (c:Category { catId: row[0]})
SET c.catName = row[2], c.pageCount = toInteger(row[3]), c.subcatCount = toInteger(row[4])
} IN TRANSACTIONS OF 10000 ROWS
CALL {
LOAD CSV FROM "https://github.com/jbarrasa/datasets/blob/master/wikipedia/data/cats.csv?raw=true" AS row
CREATE (c:Category { catId: row[0]})
SET c.catName = row[2], c.pageCount = toInteger(row[3]), c.subcatCount = toInteger(row[4])
} IN TRANSACTIONS OF 10000 ROWS -->
CALL {
LOAD CSV FROM "https://github.com/jbarrasa/datasets/blob/master/wikipedia/data/cats.csv?raw=true" AS row
CREATE (c:Category { catId: row[0]})
SET c.catName = row[2], c.pageCount = toInteger(row[3]), c.subcatCount = toInteger(row[4])
}
LOAD CSV FROM "https://github.com/jbarrasa/datasets/blob/master/wikipedia/data/rels.csv?raw=true" AS row
MATCH (from:Category { catId: row[0]})
MATCH (to:Category { catId: row[1]})
CREATE (from)-[:SUBCAT_OF]->(to)
<!-- stats -->
MATCH (c:Category)
return SUM(c.pageCount) AS `#pages categorised (with duplicates)`,
AVG(c.pageCount) AS `average #pages per cat`,
percentileCont(c.pageCount, 0.75) AS `.75p #pages in a cat`,
MIN(c.pageCount) AS `min #pages in a cat`,
MAX(c.pageCount) AS `max #pages in a cat`
MATCH (c:Category)
WHERE NOT (c)-[:SUBCAT_OF]-()
RETURN COUNT(c)
MATCH (c:Category)
WHERE c.catName CONTAINS '{term}'
RETURN c;

View File

@ -0,0 +1,33 @@
{
/* the Wikidata JSON file */
"file": "./wikidata-dump.json",
/* neo4j connection details */
"neo4j": {
/* bolt protocol URI */
"bolt": "bolt://localhost",
"auth": {
"user": "neo4j",
"pass": "password"
}
},
/* Stages */
"do": {
/* database cleanup */
"0": true,
/* importing items and properties */
"1": true,
/* linking entities and generating claims */
"2": true
},
/* extra console output on stage 2 */
"verbose": false,
/* how many commands will be ran by the DB at a given time */
"concurrency": 4,
/* skip lines */
"skip": 0,
/* count of lines */
"lines": 21225524,
/* bucket size of entities sent to DB to process */
"bucket": 1000
}

71
_doc/home/Prompt.md Normal file
View File

@ -0,0 +1,71 @@
[{'role': 'system', 'content': "I want you to act as smart home manager of Home Assistant.\nI will provide information of smart home along with a question, you will truthfully make correction or answer using information provided in one sentence in everyday language.\n\n
Current Time: 2024-03-09 03:16:03.540070+02:00\n\nAvailable Devices:\n```csv\nentity_id,name,state,aliases\nperson.popov,popov,unknown,\nperson.estelle,Estelle,unknown,\nupdate.home_assistant_operating_system_update,Home Assistant Operating System Update,off,\nsun.sun,Sun,below_horizon,\nsensor.sun_next_rising,Sun Next rising,2024-03-09T04:45:33+00:00,\nsensor.sun_next_setting,Sun Next setting,2024-03-09T16:29:12+00:00,\ntodo.shopping_list,Shopping List,0,\nbinary_sensor.rpi_power_status,RPi Power status,on,\ntodo.dev,Dev,0,\ntodo.jw,Jw,6,\nsensor.garden_temperature,Garden Temperature,4.83,\nsensor.garden_humidity,Garden Humidity,0.00,\nsensor.garden_pressure,Garden Pressure,948.28,\nsensor.garden_soil_moisture,Garden Soil Moisture,unknown,\ntts.google_en_com,Google en com,2024-03-08T08:16:30.141892+00:00,\ndevice_tracker.iphone,iPhone,unknown,\nweather.forecast_home,Forecast Home,fog,Pesho\nswitch.tasmota,Лампа Кухня,off,Kitchen Lamp\nswitch.tasmota_2,Печка банята,off,Bathtoom Heater\nswitch.tasmota_3,Вентилатор Банята,off,Bathroom Fan\nsensor.plug_plants_energy,Energy,unavailable,\nsensor.plug_plants_current,Current,unavailable,\nsensor.plug_plants_power,Power,unavailable,\nsensor.plug_plants_voltage,Voltage,unavailable,\nswitch.plug_plants,plug plants,unavailable,\n```\
The current state of devices is provided in available devices.\nUse execute_services function only for requested action, not for current states.\nANSWER WITH JSON OBJECT IN FORMAT { {'id':{sequenceID}, 'choices': [{'finish_reason': 'function_call', 'index': 0, 'message': {'role': 'assistant', 'function_call': ... }}]}} .\nDo not restate or appreciate what user says, rather make a quick inquiry."},
{'role': 'user', 'content': ' turn on bathroom fan'},
{'id': 'chatcmpl-90fbfM6ILsdoE5ub08riAjbpGND1L', 'choices': [{'finish_reason': 'function_call', 'index': 0, 'message': {'role': 'assistant', 'function_call': {'arguments': '{"list":[{"domain":"switch","service":"turn_on","service_data":{"entity_id":"switch.tasmota_3"}}]}', 'name': 'execute_services'}}}], 'created': 1709946963, 'model': 'gpt-3.5-turbo-1106', 'object': 'chat.completion', 'system_fingerprint': 'fp_f93e21ed76', 'usage': {'completion_tokens': 35, 'prompt_tokens': 615, 'total_tokens': 650}},
{'role': 'user', 'content': ' turn off bathroom fan'},
{'role': 'function', 'name': 'execute_services', 'content': "[{'success': True}]"}
{'id': 'chatcmpl-90fbgAkWdo8CprLSmjV5V9wvnKqlm', 'choices': [{'finish_reason': 'stop', 'index': 0, 'message': {'content': 'Bathroom fan has been turned on.', 'role': 'assistant'}}]},
{'role': 'user', 'content': 'turn off bathroom fan'},
{'id': 'chatcmpl-90fcLR8ukGNzXBv7WIqF8Wsn9LPid', 'choices': [{'finish_reason': 'function_call', 'index': 0, 'message': {'role': 'assistant', 'function_call': {'arguments': '{"list":[{"domain":"switch","service":"turn_off","service_data":{"entity_id":"switch.tasmota_3"}}]}', 'name': 'execute_services'}}}]}]
{'role': 'function', 'name': 'execute_services', 'content': "[{'success': True}]"},
{'content': 'Bathroom fan has been turned off.', 'role': 'assistant'},
{'role': 'user', 'content': 'спри вентилатора в банята'},
{'role': 'user', 'content': 'turn off bathroom fan'},
{'id': 'chatcmpl-90fcLR8ukGNzXBv7WIeF8Wsn47dh8', 'choices': [{'finish_reason': 'function_call', 'index': 0, 'message': {'role': 'assistant', 'function_call': {'arguments': '{"list":[{"domain":"switch","service":"turn_off","service_data":{"entity_id":"switch.tasmota_3"}}]}', 'name': 'execute_services'}}}]},
{'role': 'function', 'name': 'execute_services', 'content': "[{'success': True}]"},
{'content': 'Готово!', 'role': 'assistant'},
{'role': 'user', 'content': 'turn off kitchen lamp'}
--------------->>
[{'role': 'system', 'content': "I want you to act as smart home manager of Home Assistant.\nI will provide information of smart home along with a question, you will truthfully make correction or answer using information provided in one sentence in everyday language.\n\n
Current Time: {{now()}}
Available Devices:
```csv
entity_id,name,state,aliases
{% for entity in exposed_entities -%}
{{ entity.entity_id }},{{ entity.name }},{{ entity.state }},{{entity.aliases | join('/')}}
{% endfor -%}
```
The current state of devices is provided in available devices.\nUse execute_services function only for requested action, not for current states.\nANSWER WITH JSON OBJECT IN FORMAT { {'id':{sequenceID}, 'choices': [{'finish_reason': 'function_call', 'index': 0, 'message': {'role': 'assistant', 'function_call': ... }}]}} .\nDo not restate or appreciate what user says, rather make a quick inquiry."},
{'role': 'user', 'content': ' turn on bathroom fan'},
{'id': 'chatcmpl-90fbfM6ILsdoE5ub08riAjbpGND1L', 'choices': [{'finish_reason': 'function_call', 'index': 0, 'message': {'role': 'assistant', 'function_call': {'arguments': '{"list":[{"domain":"switch","service":"turn_on","service_data":{"entity_id":"switch.tasmota_3"}}]}', 'name': 'execute_services'}}}], 'created': 1709946963, 'model': 'gpt-3.5-turbo-1106', 'object': 'chat.completion', 'system_fingerprint': 'fp_f93e21ed76', 'usage': {'completion_tokens': 35, 'prompt_tokens': 615, 'total_tokens': 650}},
{'role': 'user', 'content': ' turn off bathroom fan'},
{'role': 'function', 'name': 'execute_services', 'content': "[{'success': True}]"}
{'id': 'chatcmpl-90fbgAkWdo8CprLSmjV5V9wvnKqlm', 'choices': [{'finish_reason': 'stop', 'index': 0, 'message': {'content': 'Bathroom fan has been turned on.', 'role': 'assistant'}}]},
{'role': 'user', 'content': 'turn off bathroom fan'},
{'id': 'chatcmpl-90fcLR8ukGNzXBv7WIqF8Wsn9LPid', 'choices': [{'finish_reason': 'function_call', 'index': 0, 'message': {'role': 'assistant', 'function_call': {'arguments': '{"list":[{"domain":"switch","service":"turn_off","service_data":{"entity_id":"switch.tasmota_3"}}]}', 'name': 'execute_services'}}}]}]
{'role': 'function', 'name': 'execute_services', 'content': "[{'success': True}]"},
{'content': 'Bathroom fan has been turned off.', 'role': 'assistant'},
{'role': 'user', 'content': 'спри вентилатора в банята'},
{'id': 'chatcmpl-90fcLR8ukGNzXBv7WIeF8Wsn47dh8', 'choices': [{'finish_reason': 'function_call', 'index': 0, 'message': {'role': 'assistant', 'function_call': {'arguments': '{"list":[{"domain":"switch","service":"turn_off","service_data":{"entity_id":"switch.tasmota_3"}}]}', 'name': 'execute_services'}}}]},
{'role': 'function', 'name': 'execute_services', 'content': "[{'success': True}]"},
{'content': 'Готово!', 'role': 'assistant'}
----- short ---- no resonse ---
[{'role': 'system', 'content': "I want you to act as smart home manager of Home Assistant.\nI will provide information of smart home along with a question, you will truthfully make correction or answer using information provided in one sentence in everyday language.\n\n
Current Time: {{now()}}
Available Devices:
```csv
entity_id,name,state,aliases
{% for entity in exposed_entities -%}
{{ entity.entity_id }},{{ entity.name }},{{ entity.state }},{{entity.aliases | join('/')}}
{% endfor -%}
```
The current state of devices is provided in available devices.\nUse execute_services function only for requested action, not for current states.\nANSWER WITH JSON OBJECT IN FORMAT { {'id':{sequenceID}, 'choices': [{'finish_reason': 'function_call', 'index': 0, 'message': {'role': 'assistant', 'function_call': ... }}]}} .\nDo not restate or appreciate what user says, rather make a quick inquiry."},
{'role': 'user', 'content': ' turn on bathroom fan'},
{'id': 'chatcmpl-90fbfM6ILsdoE5ub08riAjbpGND1L', 'choices': [{'finish_reason': 'function_call', 'index': 0, 'message': {'role': 'assistant', 'function_call': {'arguments': '{"list":[{"domain":"switch","service":"turn_on","service_data":{"entity_id":"switch.tasmota_3"}}]}', 'name': 'execute_services'}}}], 'created': 1709946963, 'model': 'gpt-3.5-turbo-1106', 'object': 'chat.completion', 'system_fingerprint': 'fp_f93e21ed76', 'usage': {'completion_tokens': 35, 'prompt_tokens': 615, 'total_tokens': 650}},
{'role': 'user', 'content': ' turn off bathroom fan'},
{'id': 'chatcmpl-90fcLR8ukGNzXBv7WIqF8Wsn9LPid', 'choices': [{'finish_reason': 'function_call', 'index': 0, 'message': {'role': 'assistant', 'function_call': {'arguments': '{"list":[{"domain":"switch","service":"turn_off","service_data":{"entity_id":"switch.tasmota_3"}}]}', 'name': 'execute_services'}}}]}
{'role': 'user', 'content': 'спри вентилатора в банята'},
{'id': 'chatcmpl-90fcLR8ukGNzXBv7WIeF8Wsn47dh8', 'choices': [{'finish_reason': 'function_call', 'index': 0, 'message': {'role': 'assistant', 'function_call': {'arguments': '{"list":[{"domain":"switch","service":"turn_off","service_data":{"entity_id":"switch.tasmota_3"}}]}', 'name': 'execute_services'}}}]}]

View File

@ -0,0 +1,2 @@
ollama serve OLLAMA_DEBUG=1 #2245

20
_doc/home/logs.log Normal file
View File

@ -0,0 +1,20 @@
2024-03-09 03:16:03.541 INFO (MainThread) [custom_components.extended_openai_conversation] Prompt for gpt-3.5-turbo-1106: [{'role': 'system', 'content': "I want you to act as smart home manager of Home Assistant.\nI will provide information of smart home along with a question, you will truthfully make correction or answer using information provided in one sentence in everyday language.\n\nCurrent Time: 2024-03-09 03:16:03.540070+02:00\n\nAvailable Devices:\n```csv\nentity_id,name,state,aliases\nperson.popov,popov,unknown,\nperson.estelle,Estelle,unknown,\nupdate.home_assistant_operating_system_update,Home Assistant Operating System Update,off,\nsun.sun,Sun,below_horizon,\nsensor.sun_next_rising,Sun Next rising,2024-03-09T04:45:33+00:00,\nsensor.sun_next_setting,Sun Next setting,2024-03-09T16:29:12+00:00,\ntodo.shopping_list,Shopping List,0,\nbinary_sensor.rpi_power_status,RPi Power status,on,\ntodo.dev,Dev,0,\ntodo.jw,Jw,6,\nsensor.garden_temperature,Garden Temperature,4.83,\nsensor.garden_humidity,Garden Humidity,0.00,\nsensor.garden_pressure,Garden Pressure,948.28,\nsensor.garden_soil_moisture,Garden Soil Moisture,unknown,\ntts.google_en_com,Google en com,2024-03-08T08:16:30.141892+00:00,\ndevice_tracker.iphone,iPhone,unknown,\nweather.forecast_home,Forecast Home,fog,Pesho\nswitch.tasmota,Лампа Кухня,off,Kitchen Lamp\nswitch.tasmota_2,Печка банята,off,Bathtoom Heater\nswitch.tasmota_3,Вентилатор Банята,off,Bathroom Fan\nsensor.plug_plants_energy,Energy,unavailable,\nsensor.plug_plants_current,Current,unavailable,\nsensor.plug_plants_power,Power,unavailable,\nsensor.plug_plants_voltage,Voltage,unavailable,\nswitch.plug_plants,plug plants,unavailable,\n```\n\nThe current state of devices is provided in available devices.\nUse execute_services function only for requested action, not for current states.\nDo not execute service without user's confirmation.\nDo not restate or appreciate what user says, rather make a quick inquiry."}, {'role': 'user', 'content': ' turn on bathroom fan'}]
2024-03-09 03:16:04.512 INFO (MainThread) [custom_components.extended_openai_conversation] Response {'id': 'chatcmpl-90fbfM6ILsdoE5ub08riAjbpGND1L', 'choices': [{'finish_reason': 'function_call', 'index': 0, 'message': {'role': 'assistant', 'function_call': {'arguments': '{"list":[{"domain":"switch","service":"turn_on","service_data":{"entity_id":"switch.tasmota_3"}}]}', 'name': 'execute_services'}}}], 'created': 1709946963, 'model': 'gpt-3.5-turbo-1106', 'object': 'chat.completion', 'system_fingerprint': 'fp_f93e21ed76', 'usage': {'completion_tokens': 35, 'prompt_tokens': 615, 'total_tokens': 650}}
2024-03-09 03:16:04.516 INFO (MainThread) [custom_components.extended_openai_conversation] Prompt for gpt-3.5-turbo-1106: [{'role': 'system', 'content': "I want you to act as smart home manager of Home Assistant.\nI will provide information of smart home along with a question, you will truthfully make correction or answer using information provided in one sentence in everyday language.\n\nCurrent Time: 2024-03-09 03:16:03.540070+02:00\n\nAvailable Devices:\n```csv\nentity_id,name,state,aliases\nperson.popov,popov,unknown,\nperson.estelle,Estelle,unknown,\nupdate.home_assistant_operating_system_update,Home Assistant Operating System Update,off,\nsun.sun,Sun,below_horizon,\nsensor.sun_next_rising,Sun Next rising,2024-03-09T04:45:33+00:00,\nsensor.sun_next_setting,Sun Next setting,2024-03-09T16:29:12+00:00,\ntodo.shopping_list,Shopping List,0,\nbinary_sensor.rpi_power_status,RPi Power status,on,\ntodo.dev,Dev,0,\ntodo.jw,Jw,6,\nsensor.garden_temperature,Garden Temperature,4.83,\nsensor.garden_humidity,Garden Humidity,0.00,\nsensor.garden_pressure,Garden Pressure,948.28,\nsensor.garden_soil_moisture,Garden Soil Moisture,unknown,\ntts.google_en_com,Google en com,2024-03-08T08:16:30.141892+00:00,\ndevice_tracker.iphone,iPhone,unknown,\nweather.forecast_home,Forecast Home,fog,Pesho\nswitch.tasmota,Лампа Кухня,off,Kitchen Lamp\nswitch.tasmota_2,Печка банята,off,Bathtoom Heater\nswitch.tasmota_3,Вентилатор Банята,off,Bathroom Fan\nsensor.plug_plants_energy,Energy,unavailable,\nsensor.plug_plants_current,Current,unavailable,\nsensor.plug_plants_power,Power,unavailable,\nsensor.plug_plants_voltage,Voltage,unavailable,\nswitch.plug_plants,plug plants,unavailable,\n```\n\nThe current state of devices is provided in available devices.\nUse execute_services function only for requested action, not for current states.\nDo not execute service without user's confirmation.\nDo not restate or appreciate what user says, rather make a quick inquiry."}, {'role': 'user', 'content': ' turn on bathroom fan'}, {'role': 'function', 'name': 'execute_services', 'content': "[{'success': True}]"}]
2024-03-09 03:16:22.974 ERROR (MainThread) [custom_components.tuya_local.device] <class 'Exception'>: Unable to find device on network (specify IP address) while initialising device 4707834434ab951e83f0
2024-03-09 03:16:23.115 INFO (MainThread) [custom_components.extended_openai_conversation] Response {'id': 'chatcmpl-90fbgAkWdo8CprLSmjV5V9wvnKqlm', 'choices': [{'finish_reason': 'stop', 'index': 0, 'message': {'content': 'Bathroom fan has been turned on.', 'role': 'assistant'}}], 'created': 1709946964, 'model': 'gpt-3.5-turbo-1106', 'object': 'chat.completion', 'system_fingerprint': 'fp_f93e21ed76', 'usage': {'completion_tokens': 8, 'prompt_tokens': 627, 'total_tokens': 635}}
2024-03-09 03:16:31.297 INFO (MainThread) [custom_components.extended_openai_conversation] Prompt for gpt-3.5-turbo-1106: [{'role': 'system', 'content': "I want you to act as smart home manager of Home Assistant.\nI will provide information of smart home along with a question, you will truthfully make correction or answer using information provided in one sentence in everyday language.\n\nCurrent Time: 2024-03-09 03:16:03.540070+02:00\n\nAvailable Devices:\n```csv\nentity_id,name,state,aliases\nperson.popov,popov,unknown,\nperson.estelle,Estelle,unknown,\nupdate.home_assistant_operating_system_update,Home Assistant Operating System Update,off,\nsun.sun,Sun,below_horizon,\nsensor.sun_next_rising,Sun Next rising,2024-03-09T04:45:33+00:00,\nsensor.sun_next_setting,Sun Next setting,2024-03-09T16:29:12+00:00,\ntodo.shopping_list,Shopping List,0,\nbinary_sensor.rpi_power_status,RPi Power status,on,\ntodo.dev,Dev,0,\ntodo.jw,Jw,6,\nsensor.garden_temperature,Garden Temperature,4.83,\nsensor.garden_humidity,Garden Humidity,0.00,\nsensor.garden_pressure,Garden Pressure,948.28,\nsensor.garden_soil_moisture,Garden Soil Moisture,unknown,\ntts.google_en_com,Google en com,2024-03-08T08:16:30.141892+00:00,\ndevice_tracker.iphone,iPhone,unknown,\nweather.forecast_home,Forecast Home,fog,Pesho\nswitch.tasmota,Лампа Кухня,off,Kitchen Lamp\nswitch.tasmota_2,Печка банята,off,Bathtoom Heater\nswitch.tasmota_3,Вентилатор Банята,off,Bathroom Fan\nsensor.plug_plants_energy,Energy,unavailable,\nsensor.plug_plants_current,Current,unavailable,\nsensor.plug_plants_power,Power,unavailable,\nsensor.plug_plants_voltage,Voltage,unavailable,\nswitch.plug_plants,plug plants,unavailable,\n```\n\nThe current state of devices is provided in available devices.\nUse execute_services function only for requested action, not for current states.\nDo not execute service without user's confirmation.\nDo not restate or appreciate what user says, rather make a quick inquiry."}, {'role': 'user', 'content': ' turn on bathroom fan'}, {'role': 'function', 'name': 'execute_services', 'content': "[{'success': True}]"}, {'content': 'Bathroom fan has been turned on.', 'role': 'assistant'}, {'role': 'user', 'content': 'спри вентилатора в банята'}]
2024-03-09 03:16:32.046 INFO (MainThread) [custom_components.extended_openai_conversation] Response {'id': 'chatcmpl-90fc7oiuaf54OlpINT8iv3syivnk3', 'choices': [{'finish_reason': 'stop', 'index': 0, 'message': {'content': 'Извършено.', 'role': 'assistant'}}], 'created': 1709946991, 'model': 'gpt-3.5-turbo-1106', 'object': 'chat.completion', 'system_fingerprint': 'fp_f93e21ed76', 'usage': {'completion_tokens': 9, 'prompt_tokens': 654, 'total_tokens': 663}}
2024-03-09 03:16:44.762 INFO (MainThread) [custom_components.extended_openai_conversation] Prompt for gpt-3.5-turbo-1106: [{'role': 'system', 'content': "I want you to act as smart home manager of Home Assistant.\nI will provide information of smart home along with a question, you will truthfully make correction or answer using information provided in one sentence in everyday language.\n\nCurrent Time: 2024-03-09 03:16:03.540070+02:00\n\nAvailable Devices:\n```csv\nentity_id,name,state,aliases\nperson.popov,popov,unknown,\nperson.estelle,Estelle,unknown,\nupdate.home_assistant_operating_system_update,Home Assistant Operating System Update,off,\nsun.sun,Sun,below_horizon,\nsensor.sun_next_rising,Sun Next rising,2024-03-09T04:45:33+00:00,\nsensor.sun_next_setting,Sun Next setting,2024-03-09T16:29:12+00:00,\ntodo.shopping_list,Shopping List,0,\nbinary_sensor.rpi_power_status,RPi Power status,on,\ntodo.dev,Dev,0,\ntodo.jw,Jw,6,\nsensor.garden_temperature,Garden Temperature,4.83,\nsensor.garden_humidity,Garden Humidity,0.00,\nsensor.garden_pressure,Garden Pressure,948.28,\nsensor.garden_soil_moisture,Garden Soil Moisture,unknown,\ntts.google_en_com,Google en com,2024-03-08T08:16:30.141892+00:00,\ndevice_tracker.iphone,iPhone,unknown,\nweather.forecast_home,Forecast Home,fog,Pesho\nswitch.tasmota,Лампа Кухня,off,Kitchen Lamp\nswitch.tasmota_2,Печка банята,off,Bathtoom Heater\nswitch.tasmota_3,Вентилатор Банята,off,Bathroom Fan\nsensor.plug_plants_energy,Energy,unavailable,\nsensor.plug_plants_current,Current,unavailable,\nsensor.plug_plants_power,Power,unavailable,\nsensor.plug_plants_voltage,Voltage,unavailable,\nswitch.plug_plants,plug plants,unavailable,\n```\n\nThe current state of devices is provided in available devices.\nUse execute_services function only for requested action, not for current states.\nDo not execute service without user's confirmation.\nDo not restate or appreciate what user says, rather make a quick inquiry."}, {'role': 'user', 'content': ' turn on bathroom fan'}, {'role': 'function', 'name': 'execute_services', 'content': "[{'success': True}]"}, {'content': 'Bathroom fan has been turned on.', 'role': 'assistant'}, {'role': 'user', 'content': 'спри вентилатора в банята'}, {'content': 'Извършено.', 'role': 'assistant'}, {'role': 'user', 'content': 'turn off bathroom fan'}]
2024-03-09 03:16:46.478 INFO (MainThread) [custom_components.extended_openai_conversation] Response {'id': 'chatcmpl-90fcLR8ukGNzXBv7WIqF8Wsn9LPid', 'choices': [{'finish_reason': 'function_call', 'index': 0, 'message': {'role': 'assistant', 'function_call': {'arguments': '{"list":[{"domain":"switch","service":"turn_off","service_data":{"entity_id":"switch.tasmota_3"}}]}', 'name': 'execute_services'}}}], 'created': 1709947005, 'model': 'gpt-3.5-turbo-1106', 'object': 'chat.completion', 'system_fingerprint': 'fp_f93e21ed76', 'usage': {'completion_tokens': 35, 'prompt_tokens': 674, 'total_tokens': 709}}
2024-03-09 03:16:46.481 INFO (MainThread) [custom_components.extended_openai_conversation] Prompt for gpt-3.5-turbo-1106: [{'role': 'system', 'content': "I want you to act as smart home manager of Home Assistant.\nI will provide information of smart home along with a question, you will truthfully make correction or answer using information provided in one sentence in everyday language.\n\nCurrent Time: 2024-03-09 03:16:03.540070+02:00\n\nAvailable Devices:\n```csv\nentity_id,name,state,aliases\nperson.popov,popov,unknown,\nperson.estelle,Estelle,unknown,\nupdate.home_assistant_operating_system_update,Home Assistant Operating System Update,off,\nsun.sun,Sun,below_horizon,\nsensor.sun_next_rising,Sun Next rising,2024-03-09T04:45:33+00:00,\nsensor.sun_next_setting,Sun Next setting,2024-03-09T16:29:12+00:00,\ntodo.shopping_list,Shopping List,0,\nbinary_sensor.rpi_power_status,RPi Power status,on,\ntodo.dev,Dev,0,\ntodo.jw,Jw,6,\nsensor.garden_temperature,Garden Temperature,4.83,\nsensor.garden_humidity,Garden Humidity,0.00,\nsensor.garden_pressure,Garden Pressure,948.28,\nsensor.garden_soil_moisture,Garden Soil Moisture,unknown,\ntts.google_en_com,Google en com,2024-03-08T08:16:30.141892+00:00,\ndevice_tracker.iphone,iPhone,unknown,\nweather.forecast_home,Forecast Home,fog,Pesho\nswitch.tasmota,Лампа Кухня,off,Kitchen Lamp\nswitch.tasmota_2,Печка банята,off,Bathtoom Heater\nswitch.tasmota_3,Вентилатор Банята,off,Bathroom Fan\nsensor.plug_plants_energy,Energy,unavailable,\nsensor.plug_plants_current,Current,unavailable,\nsensor.plug_plants_power,Power,unavailable,\nsensor.plug_plants_voltage,Voltage,unavailable,\nswitch.plug_plants,plug plants,unavailable,\n```\n\nThe current state of devices is provided in available devices.\nUse execute_services function only for requested action, not for current states.\nDo not execute service without user's confirmation.\nDo not restate or appreciate what user says, rather make a quick inquiry."}, {'role': 'user', 'content': ' turn on bathroom fan'}, {'role': 'function', 'name': 'execute_services', 'content': "[{'success': True}]"}, {'content': 'Bathroom fan has been turned on.', 'role': 'assistant'}, {'role': 'user', 'content': 'спри вентилатора в банята'}, {'content': 'Извършено.', 'role': 'assistant'}, {'role': 'user', 'content': 'turn off bathroom fan'}, {'role': 'function', 'name': 'execute_services', 'content': "[{'success': True}]"}]
2024-03-09 03:16:47.321 INFO (MainThread) [custom_components.extended_openai_conversation] Response {'id': 'chatcmpl-90fcMGNtDPiUAUiGblZYD6IAs7NaM', 'choices': [{'finish_reason': 'stop', 'index': 0, 'message': {'content': 'Bathroom fan has been turned off.', 'role': 'assistant'}}], 'created': 1709947006, 'model': 'gpt-3.5-turbo-1106', 'object': 'chat.completion', 'system_fingerprint': 'fp_f93e21ed76', 'usage': {'completion_tokens': 8, 'prompt_tokens': 686, 'total_tokens': 694}}
2024-03-09 03:21:47.790 INFO (MainThread) [custom_components.extended_openai_conversation] Prompt for gpt-3.5-turbo-1106: [{'role': 'system', 'content': "I want you to act as smart home manager of Home Assistant.\nI will provide information of smart home along with a question, you will truthfully make correction or answer using information provided in one sentence in everyday language.\n\nCurrent Time: 2024-03-09 03:21:47.787313+02:00\n\nAvailable Devices:\n```csv\nentity_id,name,state,aliases\nperson.popov,popov,unknown,\nperson.estelle,Estelle,unknown,\nupdate.home_assistant_operating_system_update,Home Assistant Operating System Update,off,\nsun.sun,Sun,below_horizon,\nsensor.sun_next_rising,Sun Next rising,2024-03-09T04:45:33+00:00,\nsensor.sun_next_setting,Sun Next setting,2024-03-09T16:29:12+00:00,\ntodo.shopping_list,Shopping List,0,\nbinary_sensor.rpi_power_status,RPi Power status,on,\ntodo.dev,Dev,0,\ntodo.jw,Jw,6,\nsensor.garden_temperature,Garden Temperature,5.32,\nsensor.garden_humidity,Garden Humidity,0.00,\nsensor.garden_pressure,Garden Pressure,948.19,\nsensor.garden_soil_moisture,Garden Soil Moisture,unknown,\ntts.google_en_com,Google en com,2024-03-08T08:16:30.141892+00:00,\ndevice_tracker.iphone,iPhone,unknown,\nweather.forecast_home,Forecast Home,fog,Pesho\nswitch.tasmota,Лампа Кухня,off,Kitchen Lamp\nswitch.tasmota_2,Печка банята,off,Bathtoom Heater\nswitch.tasmota_3,Вентилатор Банята,off,Bathroom Fan\nsensor.plug_plants_energy,Energy,unavailable,\nsensor.plug_plants_current,Current,unavailable,\nsensor.plug_plants_power,Power,unavailable,\nsensor.plug_plants_voltage,Voltage,unavailable,\nswitch.plug_plants,plug plants,unavailable,\n```\n\nThe current state of devices is provided in available devices.\nUse execute_services function only for requested action, not for current states.\nDo not execute service without user's confirmation.\nDo not restate or appreciate what user says, rather make a quick inquiry."}, {'role': 'user', 'content': 'turn on kitchen light'}]
2024-03-09 03:21:48.861 INFO (MainThread) [custom_components.extended_openai_conversation] Response {'id': 'chatcmpl-90fhEXO8Mz2nZRWPUYeDMtaytUSfz', 'choices': [{'finish_reason': 'function_call', 'index': 0, 'message': {'role': 'assistant', 'function_call': {'arguments': '{"list":[{"domain":"switch","service":"turn_on","service_data":{"entity_id":"switch.tasmota"}}]}', 'name': 'execute_services'}}}], 'created': 1709947308, 'model': 'gpt-3.5-turbo-1106', 'object': 'chat.completion', 'system_fingerprint': 'fp_f93e21ed76', 'usage': {'completion_tokens': 33, 'prompt_tokens': 615, 'total_tokens': 648}}
2024-03-09 03:21:48.862 INFO (MainThread) [custom_components.extended_openai_conversation] Prompt for gpt-3.5-turbo-1106: [{'role': 'system', 'content': "I want you to act as smart home manager of Home Assistant.\nI will provide information of smart home along with a question, you will truthfully make correction or answer using information provided in one sentence in everyday language.\n\nCurrent Time: 2024-03-09 03:21:47.787313+02:00\n\nAvailable Devices:\n```csv\nentity_id,name,state,aliases\nperson.popov,popov,unknown,\nperson.estelle,Estelle,unknown,\nupdate.home_assistant_operating_system_update,Home Assistant Operating System Update,off,\nsun.sun,Sun,below_horizon,\nsensor.sun_next_rising,Sun Next rising,2024-03-09T04:45:33+00:00,\nsensor.sun_next_setting,Sun Next setting,2024-03-09T16:29:12+00:00,\ntodo.shopping_list,Shopping List,0,\nbinary_sensor.rpi_power_status,RPi Power status,on,\ntodo.dev,Dev,0,\ntodo.jw,Jw,6,\nsensor.garden_temperature,Garden Temperature,5.32,\nsensor.garden_humidity,Garden Humidity,0.00,\nsensor.garden_pressure,Garden Pressure,948.19,\nsensor.garden_soil_moisture,Garden Soil Moisture,unknown,\ntts.google_en_com,Google en com,2024-03-08T08:16:30.141892+00:00,\ndevice_tracker.iphone,iPhone,unknown,\nweather.forecast_home,Forecast Home,fog,Pesho\nswitch.tasmota,Лампа Кухня,off,Kitchen Lamp\nswitch.tasmota_2,Печка банята,off,Bathtoom Heater\nswitch.tasmota_3,Вентилатор Банята,off,Bathroom Fan\nsensor.plug_plants_energy,Energy,unavailable,\nsensor.plug_plants_current,Current,unavailable,\nsensor.plug_plants_power,Power,unavailable,\nsensor.plug_plants_voltage,Voltage,unavailable,\nswitch.plug_plants,plug plants,unavailable,\n```\n\nThe current state of devices is provided in available devices.\nUse execute_services function only for requested action, not for current states.\nDo not execute service without user's confirmation.\nDo not restate or appreciate what user says, rather make a quick inquiry."}, {'role': 'user', 'content': 'turn on kitchen light'}, {'role': 'function', 'name': 'execute_services', 'content': "[{'success': True}]"}]
2024-03-09 03:21:49.383 INFO (MainThread) [custom_components.extended_openai_conversation] Response {'id': 'chatcmpl-90fhFO1LyPMM8VjLjLOjMxMRbTkWj', 'choices': [{'finish_reason': 'stop', 'index': 0, 'message': {'content': 'The kitchen light has been turned on.', 'role': 'assistant'}}], 'created': 1709947309, 'model': 'gpt-3.5-turbo-1106', 'object': 'chat.completion', 'system_fingerprint': 'fp_f93e21ed76', 'usage': {'completion_tokens': 8, 'prompt_tokens': 627, 'total_tokens': 635}}
2024-03-09 03:24:36.979 INFO (MainThread) [custom_components.extended_openai_conversation] Prompt for gpt-3.5-turbo-1106: [{'role': 'system', 'content': "I want you to act as smart home manager of Home Assistant.\nI will provide information of smart home along with a question, you will truthfully make correction or answer using information provided in one sentence in everyday language.\n\nCurrent Time: 2024-03-09 03:24:36.975819+02:00\n\nAvailable Devices:\n```csv\nentity_id,name,state,aliases\nperson.popov,popov,unknown,\nperson.estelle,Estelle,unknown,\nupdate.home_assistant_operating_system_update,Home Assistant Operating System Update,off,\nsun.sun,Sun,below_horizon,\nsensor.sun_next_rising,Sun Next rising,2024-03-09T04:45:33+00:00,\nsensor.sun_next_setting,Sun Next setting,2024-03-09T16:29:12+00:00,\ntodo.shopping_list,Shopping List,0,\nbinary_sensor.rpi_power_status,RPi Power status,on,\ntodo.dev,Dev,0,\ntodo.jw,Jw,6,\nsensor.garden_temperature,Garden Temperature,5.60,\nsensor.garden_humidity,Garden Humidity,0.00,\nsensor.garden_pressure,Garden Pressure,948.10,\nsensor.garden_soil_moisture,Garden Soil Moisture,unknown,\ntts.google_en_com,Google en com,2024-03-08T08:16:30.141892+00:00,\ndevice_tracker.iphone,iPhone,unknown,\nweather.forecast_home,Forecast Home,fog,Pesho\nswitch.tasmota,Лампа Кухня,off,Kitchen Lamp\nswitch.tasmota_2,Печка банята,off,Bathtoom Heater\nswitch.tasmota_3,Вентилатор Банята,off,Bathroom Fan\nsensor.plug_plants_energy,Energy,unavailable,\nsensor.plug_plants_current,Current,unavailable,\nsensor.plug_plants_power,Power,unavailable,\nsensor.plug_plants_voltage,Voltage,unavailable,\nswitch.plug_plants,plug plants,unavailable,\n```\n\nThe current state of devices is provided in available devices.\nUse execute_services function only for requested action, not for current states.\nDo not execute service without user's confirmation.\nDo not restate or appreciate what user says, rather make a quick inquiry."}, {'role': 'user', 'content': " they're in the lights on"}]
2024-03-09 03:24:38.375 INFO (MainThread) [custom_components.extended_openai_conversation] Response {'id': 'chatcmpl-90fjx6cO5itCEw598yMK1bK9NcSoO', 'choices': [{'finish_reason': 'function_call', 'index': 0, 'message': {'role': 'assistant', 'function_call': {'arguments': '{"list":[{"domain":"switch","service":"turn_on","service_data":{"entity_id":"switch.tasmota"}},{"domain":"switch","service":"turn_on","service_data":{"entity_id":"switch.tasmota_2"}},{"domain":"switch","service":"turn_on","service_data":{"entity_id":"switch.tasmota_3"}}]}', 'name': 'execute_services'}}}], 'created': 1709947477, 'model': 'gpt-3.5-turbo-1106', 'object': 'chat.completion', 'system_fingerprint': 'fp_f93e21ed76', 'usage': {'completion_tokens': 79, 'prompt_tokens': 617, 'total_tokens': 696}}
2024-03-09 03:24:38.378 INFO (MainThread) [custom_components.extended_openai_conversation] Prompt for gpt-3.5-turbo-1106: [{'role': 'system', 'content': "I want you to act as smart home manager of Home Assistant.\nI will provide information of smart home along with a question, you will truthfully make correction or answer using information provided in one sentence in everyday language.\n\nCurrent Time: 2024-03-09 03:24:36.975819+02:00\n\nAvailable Devices:\n```csv\nentity_id,name,state,aliases\nperson.popov,popov,unknown,\nperson.estelle,Estelle,unknown,\nupdate.home_assistant_operating_system_update,Home Assistant Operating System Update,off,\nsun.sun,Sun,below_horizon,\nsensor.sun_next_rising,Sun Next rising,2024-03-09T04:45:33+00:00,\nsensor.sun_next_setting,Sun Next setting,2024-03-09T16:29:12+00:00,\ntodo.shopping_list,Shopping List,0,\nbinary_sensor.rpi_power_status,RPi Power status,on,\ntodo.dev,Dev,0,\ntodo.jw,Jw,6,\nsensor.garden_temperature,Garden Temperature,5.60,\nsensor.garden_humidity,Garden Humidity,0.00,\nsensor.garden_pressure,Garden Pressure,948.10,\nsensor.garden_soil_moisture,Garden Soil Moisture,unknown,\ntts.google_en_com,Google en com,2024-03-08T08:16:30.141892+00:00,\ndevice_tracker.iphone,iPhone,unknown,\nweather.forecast_home,Forecast Home,fog,Pesho\nswitch.tasmota,Лампа Кухня,off,Kitchen Lamp\nswitch.tasmota_2,Печка банята,off,Bathtoom Heater\nswitch.tasmota_3,Вентилатор Банята,off,Bathroom Fan\nsensor.plug_plants_energy,Energy,unavailable,\nsensor.plug_plants_current,Current,unavailable,\nsensor.plug_plants_power,Power,unavailable,\nsensor.plug_plants_voltage,Voltage,unavailable,\nswitch.plug_plants,plug plants,unavailable,\n```\n\nThe current state of devices is provided in available devices.\nUse execute_services function only for requested action, not for current states.\nDo not execute service without user's confirmation.\nDo not restate or appreciate what user says, rather make a quick inquiry."}, {'role': 'user', 'content': " they're in the lights on"}, {'role': 'function', 'name': 'execute_services', 'content': "[{'success': True}, {'success': True}, {'success': True}]"}]
2024-03-09 03:24:39.022 INFO (MainThread) [custom_components.extended_openai_conversation] Response {'id': 'chatcmpl-90fjyx3oMbsv8Ppxe3pThqTy35I64', 'choices': [{'finish_reason': 'stop', 'index': 0, 'message': {'content': "The lights are now turned on. Is there anything else you'd like to control?", 'role': 'assistant'}}], 'created': 1709947478, 'model': 'gpt-3.5-turbo-1106', 'object': 'chat.completion', 'system_fingerprint': 'fp_f93e21ed76', 'usage': {'completion_tokens': 17, 'prompt_tokens': 639, 'total_tokens': 656}}

66
_doc/home/prompt1.md Normal file
View File

@ -0,0 +1,66 @@
# SETUP:
HA Extended OpenAI Conversation
Name:
Local LLM
API key:
1234567890
Base Url:
http://192.168.0.11:11434/ # Home Assistant
api version:
v1
Skip Auth:
true
>> 2024-03-09 01:17:21.212 ERROR (MainThread) [custom_components.extended_openai_conversation] Error code: 404 - {'error': {'type': 'invalid_request_error', 'code': 'unknown_url', 'message': 'Unknown request URL: POST /chat/completions. Please check the URL for typos, or see the docs at https://platform.openai.com/docs/api-reference/.', 'param': None}}
list my devices?
what are my devices?
turn on bathroom fan
turn kitchen light on
пусни вентилатора в банята
HA Key:
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
# PROMPTs
[INST] <<SYS>>I want you to act as smart home manager of Home Assistant.\nI will provide information of smart home along with a question, you will truthfully make correction or answer using information provided in one sentence in everyday language.\n\nCurrent Time: 2024-03-09 01:28:58.574422+02:00\n\nAvailable Devices:\n```csv\nentity_id,name,state,aliases\nperson.popov,popov,unknown,\nperson.estelle,Estelle,unknown,\nupdate.home_assistant_operating_system_update,Home Assistant Operating System Update,off,\nsun.sun,Sun,below_horizon,\nsensor.sun_next_rising,Sun Next rising,2024-03-09T04:45:33+00:00,\nsensor.sun_next_setting,Sun Next setting,2024-03-09T16:29:12+00:00,\ntodo.shopping_list,Shopping List,0,\nbinary_sensor.rpi_power_status,RPi Power status,on,\ntodo.dev,Dev,0,\ntodo.jw,Jw,6,\nsensor.garden_temperature,Garden Temperature,4.59,\nsensor.garden_humidity,Garden Humidity,0.00,\nsensor.garden_pressure,Garden Pressure,948.43,\nsensor.garden_soil_moisture,Garden Soil Moisture,unknown,\ntts.google_en_com,Google en com,2024-03-08T08:16:30.141892+00:00,\ndevice_tracker.iphone,iPhone,unknown,\nweather.forecast_home,Forecast Home,partlycloudy,Pesho\nswitch.tasmota,Лампа Кухня,off,Kitchen Lamp\nswitch.tasmota_2,Печка банята,off,Bathtoom Heater\nswitch.tasmota_3,Вентилатор Банята,off,Bathroom Fan\nsensor.plug_plants_energy,Energy,unavailable,\nsensor.plug_plants_current,Current,unavailable,\nsensor.plug_plants_power,Power,unavailable,\nsensor.plug_plants_voltage,Voltage,unavailable,\nswitch.plug_plants,plug plants,unavailable,\n```\n\nThe current state of devices is provided in available devices.\nUse execute_services function only for requested action, not for current states.\nDo not execute service without user's confirmation.\nDo not restate or appreciate what user says, rather make a quick inquiry.
use this function schema:
- spec:
name: execute_services
description: Use this function to execute service of devices in Home Assistant.
parameters:
type: object
properties:
list:
type: array
items:
type: object
properties:
domain:
type: string
description: The domain of the service
service:
type: string
description: The service to be called
service_data:
type: object
description: The service data object to indicate what to control.
properties:
entity_id:
type: string
description: The entity_id retrieved from available devices. It
must start with domain, followed by dot character.
required:
- entity_id
required:
- domain
- service
- service_data
function:
type: native
name: execute_service
<</SYS>>\n\nturn on bathroom fan [/INST]\n
{'id': 'chatcmpl-641', 'choices': [{'finish_reason': 'stop', 'index': 0, 'message': {'content': '{\n "function_call": {\n "name": "execute_services",\n "arguments": "{\\"device_id\\": \\"tasmota_3\\"]"\n }\n}', 'role': 'assistant'}}]

View File

@ -16,9 +16,9 @@ interpreter --api_base http://192.168.0.137:1234/v1 --api_key "" --model openai/
192.168.0.137
################################# GROQ
# ################################ GROQ ########################## working
export OPENAI_API_KEY=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
interpreter -y --api_base https://api.groq.com/openai/v1 --model gemma-7b-it ## mixtral-8x7b-32768 # gemma-7b-it # llama2-70b-4096
interpreter -y --api_base https://api.groq.com/openai/v1 --model llama2-70b-4096 ## mixtral-8x7b-32768 # gemma-7b-it # llama2-70b-4096
##
# Load a model, start the server, and run this example in your terminal
# Choose between streaming and non-streaming mode by setting the "stream" field

View File

@ -0,0 +1,2 @@
pip install autogenstudio
autogenstudio ui --8081

34
_doc/scripts/aider.sh Normal file
View File

@ -0,0 +1,34 @@
#!/bin/bash
# python -m pip install git+https://github.com/paul-gauthier/aider.git
source ~/miniconda3/etc/profile.d/conda.sh # Adjust the path as per your Conda installation
conda activate aider
export OPENAI_API_KEY=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
# aider --no-auto-commits
OPENAI_API_BASE=https://api.deepseek.com/v1
OPENAI_API_KEY=sk-99df7736351f4536bd72cd64a416318a
AIDER_MODEL=deepseek-coder #deepseek-coder, deepseek-chat
aider --openai-api-base https://api.deepseek.com/v1 --openai-api-key sk-99df7736351f4536bd72cd64a416318a --model deepseek-coder
aider --openai-api-base 'https://api.groq.com/openai/v1' --openai-api-key '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' --model 'llama2-70b-4096'
usage: aider [-h] [--openai-api-key OPENAI_API_KEY] [--model MODEL] [--skip-model-availability-check SKIP_MODEL_AVAILABILITY_CHECK] [--4] [--4turbo] [--35turbo] [--voice-language VOICE_LANGUAGE]
[--openai-api-base OPENAI_API_BASE] [--openai-api-type OPENAI_API_TYPE] [--openai-api-version OPENAI_API_VERSION] [--openai-api-deployment-id OPENAI_API_DEPLOYMENT_ID]
[--openai-organization-id OPENAI_ORGANIZATION_ID] [--openrouter] [--edit-format EDIT_FORMAT] [--map-tokens MAP_TOKENS] [--input-history-file INPUT_HISTORY_FILE]
[--chat-history-file CHAT_HISTORY_FILE] [--dark-mode] [--light-mode] [--pretty | --no-pretty] [--stream | --no-stream] [--user-input-color USER_INPUT_COLOR]
[--tool-output-color TOOL_OUTPUT_COLOR] [--tool-error-color TOOL_ERROR_COLOR] [--assistant-output-color ASSISTANT_OUTPUT_COLOR] [--code-theme CODE_THEME] [--show-diffs]
[--git | --no-git] [--gitignore | --no-gitignore] [--aiderignore AIDERIGNORE] [--auto-commits | --no-auto-commits] [--dirty-commits | --no-dirty-commits] [--dry-run | --no-dry-run]
[--commit] [--version] [--check-update] [--skip-check-update] [--apply FILE] [--yes] [-v] [--show-repo-map] [--message COMMAND] [--message-file MESSAGE_FILE] [--encoding ENCODING]
[-c CONFIG_FILE]
export OPENAI_API_KEY=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
interpreter -y --api_base https://api.groq.com/openai/v1 --model gemma-7b-it ## mixtral-8x7b-32768 # gemma-7b-it # llama2-70b-4096
# Setup OpenRouter access
export OPENAI_API_KEY=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
export OPENAI_API_BASE=https://api.groq.com/openai/v1
# For example, run aider with Claude 3 Opus using the diff editing format
aider --model llama2-70b-4096 --edit-format diff

112
_doc/tts notes.txt Normal file
View File

@ -0,0 +1,112 @@
curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add - && \
curl -s -L https://nvidia.github.io/nvidia-docker/ubuntu20.04/nvidia-docker.list | \
sudo tee /etc/apt/sources.list.d/nvidia-docker.list && \
sudo apt-get update && \
sudo apt-get install -y nvidia-docker2
"Linux Mint 21.1" is ubuntu20.04
docker run --gpus all nvidia/cuda:10.2-cudnn7-devel nvidia-smi
docker run -it --rm --gpus all ubuntu nvidia-smi
docker run -d --gpus all -p 9000:9000 -e ASR_MODEL=base onerahmet/openai-whisper-asr-webservice:latest-gpu
https://www.youtube.com/watch?v=ZvIdFs3M5ic
############
Welcome to the world of speech synthesis!
#https://github.com/coqui-ai/TTS/tree/dev#install-tts
#https://tts.readthedocs.io/en/latest/finetuning.html
tts --list_models
M: p233, 241, 264, !267, 269, 272
F: !243, 244,248,250, 259, 263, 270, 271, 273/4/6 fast, 294, 297, 300,
BG?: 287
root@7b6397b7ecbe:~# tts --list_models
Name format: type/language/dataset/model
1: tts_models/multilingual/multi-dataset/your_tts
2: tts_models/bg/cv/vits
3: tts_models/cs/cv/vits
4: tts_models/da/cv/vits
5: tts_models/et/cv/vits
6: tts_models/ga/cv/vits
7: tts_models/en/ek1/tacotron2
8: tts_models/en/ljspeech/tacotron2-DDC
9: tts_models/en/ljspeech/tacotron2-DDC_ph
10: tts_models/en/ljspeech/glow-tts
11: tts_models/en/ljspeech/speedy-speech
12: tts_models/en/ljspeech/tacotron2-DCA
13: tts_models/en/ljspeech/vits
14: tts_models/en/ljspeech/vits--neon
15: tts_models/en/ljspeech/fast_pitch
16: tts_models/en/ljspeech/overflow
17: tts_models/en/ljspeech/neural_hmm
18: tts_models/en/vctk/vits [already downloaded]
19: tts_models/en/vctk/fast_pitch
20: tts_models/en/sam/tacotron-DDC
21: tts_models/en/blizzard2013/capacitron-t2-c50
22: tts_models/en/blizzard2013/capacitron-t2-c150_v2
23: tts_models/es/mai/tacotron2-DDC
24: tts_models/es/css10/vits
25: tts_models/fr/mai/tacotron2-DDC
26: tts_models/fr/css10/vits
27: tts_models/uk/mai/glow-tts
28: tts_models/uk/mai/vits
29: tts_models/zh-CN/baker/tacotron2-DDC-GST
30: tts_models/nl/mai/tacotron2-DDC
31: tts_models/nl/css10/vits
32: tts_models/de/thorsten/tacotron2-DCA
33: tts_models/de/thorsten/vits
34: tts_models/de/thorsten/tacotron2-DDC
35: tts_models/de/css10/vits-neon
36: tts_models/ja/kokoro/tacotron2-DDC
37: tts_models/tr/common-voice/glow-tts
38: tts_models/it/mai_female/glow-tts
39: tts_models/it/mai_female/vits
40: tts_models/it/mai_male/glow-tts
41: tts_models/it/mai_male/vits
42: tts_models/ewe/openbible/vits
43: tts_models/hau/openbible/vits
44: tts_models/lin/openbible/vits
45: tts_models/tw_akuapem/openbible/vits
46: tts_models/tw_asante/openbible/vits
47: tts_models/yor/openbible/vits
48: tts_models/hu/css10/vits
49: tts_models/el/cv/vits
50: tts_models/fi/css10/vits
51: tts_models/hr/cv/vits
52: tts_models/lt/cv/vits
53: tts_models/lv/cv/vits
54: tts_models/mt/cv/vits
55: tts_models/pl/mai_female/vits
56: tts_models/pt/cv/vits
57: tts_models/ro/cv/vits
58: tts_models/sk/cv/vits
59: tts_models/sl/cv/vits
60: tts_models/sv/cv/vits
61: tts_models/ca/custom/vits
62: tts_models/fa/custom/glow-tts
Name format: type/language/dataset/model
1: vocoder_models/universal/libri-tts/wavegrad
2: vocoder_models/universal/libri-tts/fullband-melgan
3: vocoder_models/en/ek1/wavegrad
4: vocoder_models/en/ljspeech/multiband-melgan
5: vocoder_models/en/ljspeech/hifigan_v2
6: vocoder_models/en/ljspeech/univnet
7: vocoder_models/en/blizzard2013/hifigan_v2
8: vocoder_models/en/vctk/hifigan_v2
9: vocoder_models/en/sam/hifigan_v2
10: vocoder_models/nl/mai/parallel-wavegan
11: vocoder_models/de/thorsten/wavegrad
12: vocoder_models/de/thorsten/fullband-melgan
13: vocoder_models/de/thorsten/hifigan_v1
14: vocoder_models/ja/kokoro/hifigan_v1
15: vocoder_models/uk/mai/multiband-melgan
16: vocoder_models/tr/common-voice/hifigan