Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix/not_loading_without_key #15

Merged
merged 2 commits into from
Jan 22, 2024
Merged

fix/not_loading_without_key #15

merged 2 commits into from
Jan 22, 2024

Conversation

JarbasAl
Copy link
Member

closes #14

@JarbasAl JarbasAl added the bug Something isn't working label Jan 13, 2024
@emphasize
Copy link
Member

emphasize commented Jan 13, 2024

To close 14 we should additionally add DEFAULT_SETTINGS

DEFAULT_SETTINGS = {...}

def initialize(self):
    self.settings.merge(DEFAULT_SETTINGS, new_only=True)
    self.settings.store()
    ... 

@JarbasAl
Copy link
Member Author

To close 14 we should additionally add DEFAULT_SETTINGS

DEFAULT_SETTINGS = {...}

def initialize(self):
    self.settings.merge(DEFAULT_SETTINGS, new_only=True)
    self.settings.store()
    ... 

why? there are no default settings, users need to get a key

the file gets created already with _mycroft_first_run

@emphasize
Copy link
Member

emphasize commented Jan 13, 2024

thought of a more fleshy config. Nevertheless, i like the key(s) to be set as a rule of thumb, waiting for values to be filled.
(the user is blindfolded, otherwise sees that there are keys without a (proper) value)

@JarbasAl
Copy link
Member Author

thought of a more fleshy config. Nevertheless, i like the key(s) to be set as a rule of thumb, waiting for values to be filled. (the user is blindfolded, otherwise sees that there are keys without a (proper) value)

id like self.chat to continue throwing an exception if key is not set, but for sure we can make that more informative than it already is with some LOGs

let's do that in another PR and keep this one just as a bugfix

@j1nx
Copy link
Member

j1nx commented Jan 14, 2024

Tested this, however fails with the below log snippet;

Jan 14 10:15:05 OpenVoiceOS-840dca ovos-core[2595]: 2024-01-14 10:15:05.965 - skills - ovos_workshop.skill_launcher:load:525 - INFO - ATTEMPTING TO LOAD PLUGIN SKILL: skill-ovos-fallback-chatgpt.openvoiceos
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]: 2024-01-14 10:15:06.102 - skills - ovos_plugin_manager.language:create:233 - INFO - Loaded the Language Translation plugin ovos-translate-plugin-server
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]: 2024-01-14 10:15:06.110 - skills - ovos_solver_openai_persona.engines:__init__:69 - ERROR - key not set in config
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]: 2024-01-14 10:15:06.111 - skill-ovos-fallback-chatgpt.openvoiceos - ERROR - Skill initialization failed
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]: Traceback (most recent call last):
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:   File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_workshop/skills/ovos.py", line 729, in _startup
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:     self.initialize()
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:   File "/home/ovos/.venv/lib/python3.11/site-packages/skill_ovos_fallback_chatgpt/__init__.py", line 26, in initialize
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:     self.chat = OpenAIPersonaSolver(config=self.settings)
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:   File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_solver_openai_persona/__init__.py", line 9, in __init__
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:     super().__init__(config=config)
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:   File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_solver_openai_persona/engines.py", line 70, in __init__
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:     raise ValueError("key must be set")
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]: ValueError: key must be set
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]: 2024-01-14 10:15:06.121 - skill-ovos-fallback-chatgpt.openvoiceos - ERROR - Failed to shutdown gui for skill-ovos-fallback-chatgpt.openvoiceos: <bound method GUIInterface.gui_set of <o>
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]: 2024-01-14 10:15:06.128 - skills - ovos_workshop.skill_launcher:_create_skill_instance:473 - WARNING - Legacy skill: key must be set
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]: 2024-01-14 10:15:06.135 - skills - ovos_workshop.skill_launcher:_create_skill_instance:482 - WARNING - Deprecation version=0.1.0. Caller=ovos_core.skill_manager:360. This initializatio>
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]: 2024-01-14 10:15:06.258 - skills - ovos_plugin_manager.language:create:233 - INFO - Loaded the Language Translation plugin ovos-translate-plugin-server
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]: 2024-01-14 10:15:06.265 - skills - ovos_solver_openai_persona.engines:__init__:69 - ERROR - key not set in config
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]: 2024-01-14 10:15:06.265 - skill-ovos-fallback-chatgpt.openvoiceos - ERROR - Skill initialization failed
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]: Traceback (most recent call last):
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:   File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_workshop/skills/ovos.py", line 729, in _startup
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:     self.initialize()
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:   File "/home/ovos/.venv/lib/python3.11/site-packages/skill_ovos_fallback_chatgpt/__init__.py", line 26, in initialize
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:     self.chat = OpenAIPersonaSolver(config=self.settings)
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:   File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_solver_openai_persona/__init__.py", line 9, in __init__
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:     super().__init__(config=config)
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:   File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_solver_openai_persona/engines.py", line 70, in __init__
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:     raise ValueError("key must be set")
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]: ValueError: key must be set
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]: 2024-01-14 10:15:06.272 - skill-ovos-fallback-chatgpt.openvoiceos - ERROR - Failed to shutdown gui for skill-ovos-fallback-chatgpt.openvoiceos: <bound method GUIInterface.gui_set of <o>
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]: 2024-01-14 10:15:06.288 - skills - ovos_workshop.skill_launcher:_create_skill_instance:487 - ERROR - Skill __init__ failed with key must be set
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]: Traceback (most recent call last):
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:   File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_workshop/skill_launcher.py", line 485, in _create_skill_instance
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:     self.instance._startup(self.bus, self.skill_id)
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:   File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_workshop/skills/ovos.py", line 739, in _startup
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:     raise e
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:   File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_workshop/skills/ovos.py", line 729, in _startup
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:     self.initialize()
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:   File "/home/ovos/.venv/lib/python3.11/site-packages/skill_ovos_fallback_chatgpt/__init__.py", line 26, in initialize
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:     self.chat = OpenAIPersonaSolver(config=self.settings)
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:   File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_solver_openai_persona/__init__.py", line 9, in __init__
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:     super().__init__(config=config)
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:   File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_solver_openai_persona/engines.py", line 70, in __init__
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:     raise ValueError("key must be set")
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]: ValueError: key must be set
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]: 2024-01-14 10:15:06.297 - skills - ovos_workshop.skill_launcher:_communicate_load_status:510 - ERROR - Skill skill-ovos-fallback-chatgpt.openvoiceos failed to load

@JarbasAl
Copy link
Member Author

Tested this, however fails with the below log snippet;

Jan 14 10:15:05 OpenVoiceOS-840dca ovos-core[2595]: 2024-01-14 10:15:05.965 - skills - ovos_workshop.skill_launcher:load:525 - INFO - ATTEMPTING TO LOAD PLUGIN SKILL: skill-ovos-fallback-chatgpt.openvoiceos
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]: 2024-01-14 10:15:06.102 - skills - ovos_plugin_manager.language:create:233 - INFO - Loaded the Language Translation plugin ovos-translate-plugin-server
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]: 2024-01-14 10:15:06.110 - skills - ovos_solver_openai_persona.engines:__init__:69 - ERROR - key not set in config
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]: 2024-01-14 10:15:06.111 - skill-ovos-fallback-chatgpt.openvoiceos - ERROR - Skill initialization failed
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]: Traceback (most recent call last):
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:   File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_workshop/skills/ovos.py", line 729, in _startup
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:     self.initialize()
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:   File "/home/ovos/.venv/lib/python3.11/site-packages/skill_ovos_fallback_chatgpt/__init__.py", line 26, in initialize
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:     self.chat = OpenAIPersonaSolver(config=self.settings)
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:   File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_solver_openai_persona/__init__.py", line 9, in __init__
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:     super().__init__(config=config)
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:   File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_solver_openai_persona/engines.py", line 70, in __init__
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:     raise ValueError("key must be set")
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]: ValueError: key must be set
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]: 2024-01-14 10:15:06.121 - skill-ovos-fallback-chatgpt.openvoiceos - ERROR - Failed to shutdown gui for skill-ovos-fallback-chatgpt.openvoiceos: <bound method GUIInterface.gui_set of <o>
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]: 2024-01-14 10:15:06.128 - skills - ovos_workshop.skill_launcher:_create_skill_instance:473 - WARNING - Legacy skill: key must be set
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]: 2024-01-14 10:15:06.135 - skills - ovos_workshop.skill_launcher:_create_skill_instance:482 - WARNING - Deprecation version=0.1.0. Caller=ovos_core.skill_manager:360. This initializatio>
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]: 2024-01-14 10:15:06.258 - skills - ovos_plugin_manager.language:create:233 - INFO - Loaded the Language Translation plugin ovos-translate-plugin-server
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]: 2024-01-14 10:15:06.265 - skills - ovos_solver_openai_persona.engines:__init__:69 - ERROR - key not set in config
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]: 2024-01-14 10:15:06.265 - skill-ovos-fallback-chatgpt.openvoiceos - ERROR - Skill initialization failed
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]: Traceback (most recent call last):
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:   File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_workshop/skills/ovos.py", line 729, in _startup
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:     self.initialize()
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:   File "/home/ovos/.venv/lib/python3.11/site-packages/skill_ovos_fallback_chatgpt/__init__.py", line 26, in initialize
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:     self.chat = OpenAIPersonaSolver(config=self.settings)
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:   File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_solver_openai_persona/__init__.py", line 9, in __init__
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:     super().__init__(config=config)
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:   File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_solver_openai_persona/engines.py", line 70, in __init__
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:     raise ValueError("key must be set")
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]: ValueError: key must be set
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]: 2024-01-14 10:15:06.272 - skill-ovos-fallback-chatgpt.openvoiceos - ERROR - Failed to shutdown gui for skill-ovos-fallback-chatgpt.openvoiceos: <bound method GUIInterface.gui_set of <o>
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]: 2024-01-14 10:15:06.288 - skills - ovos_workshop.skill_launcher:_create_skill_instance:487 - ERROR - Skill __init__ failed with key must be set
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]: Traceback (most recent call last):
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:   File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_workshop/skill_launcher.py", line 485, in _create_skill_instance
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:     self.instance._startup(self.bus, self.skill_id)
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:   File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_workshop/skills/ovos.py", line 739, in _startup
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:     raise e
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:   File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_workshop/skills/ovos.py", line 729, in _startup
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:     self.initialize()
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:   File "/home/ovos/.venv/lib/python3.11/site-packages/skill_ovos_fallback_chatgpt/__init__.py", line 26, in initialize
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:     self.chat = OpenAIPersonaSolver(config=self.settings)
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:   File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_solver_openai_persona/__init__.py", line 9, in __init__
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:     super().__init__(config=config)
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:   File "/home/ovos/.venv/lib/python3.11/site-packages/ovos_solver_openai_persona/engines.py", line 70, in __init__
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]:     raise ValueError("key must be set")
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]: ValueError: key must be set
Jan 14 10:15:06 OpenVoiceOS-840dca ovos-core[2595]: 2024-01-14 10:15:06.297 - skills - ovos_workshop.skill_launcher:_communicate_load_status:510 - ERROR - Skill skill-ovos-fallback-chatgpt.openvoiceos failed to load

those seem to be logs without this PR applied?

@j1nx
Copy link
Member

j1nx commented Jan 18, 2024

those seem to be logs without this PR applied?

Will double check and report back.

Copy link
Member

@j1nx j1nx left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Re-tested and all fine. Good to merge

@JarbasAl JarbasAl merged commit a2fe059 into dev Jan 22, 2024
5 of 9 checks passed
@JarbasAl JarbasAl deleted the fix/not_loading_without_key branch January 22, 2024 23:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Fails to create the skills settings folder and settings.json at first run
3 participants