https://github.com/OpenVoiceOS/ovos-skill-fallback-chatgpt
https://github.com/OpenVoiceOS/ovos-skill-fallback-chatgpt
Last synced: 10 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/OpenVoiceOS/ovos-skill-fallback-chatgpt
- Owner: OpenVoiceOS
- License: apache-2.0
- Archived: true
- Created: 2023-01-30T17:22:18.000Z (about 3 years ago)
- Default Branch: dev
- Last Pushed: 2025-01-31T06:19:52.000Z (about 1 year ago)
- Last Synced: 2025-04-26T05:19:16.437Z (11 months ago)
- Language: Python
- Size: 101 KB
- Stars: 23
- Watchers: 10
- Forks: 16
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# ChatGPT Fallback Skill
When in doubt, ask ChatGPT, powered by [OpenAI Solver](https://github.com/OpenVoiceOS/ovos-solver-plugin-openai-persona).
You need to configure a `key`, get it at https://platform.openai.com/api-keys
Or use a LocalAI (see example below)
## About
Capabilities:
- Remembers what user said earlier in the conversation
- Trained to decline inappropriate requests
Limitations:
- May occasionally generate incorrect information
- May occasionally produce harmful instructions or biased content
- Limited knowledge of world and events after 2021
## Configuration
Under skill settings (`.config/mycroft/skills/skill-ovos-fallback-chatgpt.openvoiceos/settings.json`) you can tweak some parameters for chatGPT.
| Option | Value | Description |
| --------------- | ----------------------------------------------------------------------- | ------------------------------------------------------------------------------------- |
| `key` | `sk-XXXYYYZZZAAABBB123` | Your `api_key` to access OpenAI API |
| `persona` | `You are a helpful assistant who gives very short but factual answers.` | Give a personality to chatGPT |
| `model` | `gpt-3.5-turbo` | LLM model to use, see all the options [here](https://platform.openai.com/docs/models) |
| `api_url` | `https://llama.smartgic.io/v1` | Optional and **only** required with a local AI server |
| `enable_memory` | `true` | Remember the last generated outputs |
| `memory_size` | `15` | How many memories to keep |
| `name` | `Chat G.P.T.` | Name to give to the AI assistant |
| `confirmation` | `true` | Spoken confirmation will be triggered when a request is sent to the AI |
When using a local AI server instead of OpenAI, the `api_url`has to redirect to an alternative/local server compatible with OpenAI API. When using local AI, the `key` can be anything, but it has to exist. Read more about it in the OVOS technical manual, page [persona server](https://openvoiceos.github.io/ovos-technical-manual/persona_server/#compatible-projects)
The default persona is `You are a helpful voice assistant with a friendly tone and fun sense of humor. You respond in 40 words or fewer.`
## Configurations
The skill utilizes the `~/.config/mycroft/skills/skill-ovos-fallback-chatgpt.openvoiceos/settings.json` file which allows you to configure it.
### Configuration for use with OpenAI **(ChatGPT)**
```json
{
"key": "sk-XXXYYYZZZAAABBB123",
"model": "gpt-3.5-turbo",
"persona": "You are a helpful voice assistant with a friendly tone and fun sense of humor",
"enable_memory": true,
"memory_size": 15,
"__mycroft_skill_firstrun": false
}
```
### Configuration for use with Local AI
```json
{
"api_url": "https://llama.smartgic.io/v1",
"key": "sk-xxx",
"persona": "You are a helpful voice assistant with a friendly tone and fun sense of humor",
"enable_memory": true,
"memory_size": 15,
"name": "A.I.",
"confirmation": false,
"__mycroft_skill_firstrun": false
}
```
## Examples
- "Explain quantum computing in simple terms"
- "Got any creative ideas for a 10 year old’s birthday?"