@fonoster/autopilot 0.8.31 → 0.8.33
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +47 -8
- package/dist/models/groq/types.d.ts +0 -2
- package/dist/models/groq/types.js +0 -2
- package/package.json +4 -4
package/README.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
autopilot
|
|
2
2
|
=================
|
|
3
3
|
|
|
4
|
-
[](https://fonoster.com)
|
|
5
5
|
[](https://npmjs.org/package/@fonoster/autopilot)
|
|
6
6
|
[](https://npmjs.org/package/@fonoster/autopilot)
|
|
7
7
|
[](https://github.com/fonoster/fonoster/blob/main/package.json)
|
|
@@ -87,14 +87,39 @@ Take the endpoint provided by ngrok and configure it in your Fonoster account. Y
|
|
|
87
87
|
The Autopilot supports multiple language model providers. The following is a list of the supported providers:
|
|
88
88
|
|
|
89
89
|
| Provider | Description | Supported models
|
|
90
|
-
|
|
91
|
-
| OpenAI | OpenAI provides various GPT models for conversational AI | `gpt-4o`, `gpt-4o-mini`, `gpt-3.5-turbo`, `gpt-4-turbo`
|
|
92
|
-
| Groq | Groq offers high-performance AI models optimized for speed | `
|
|
93
|
-
| Ollama | Self-hosted Ollama models | `
|
|
90
|
+
|------------|------------------------------------------------------------|--------------------------------------------------------------------------------------------|
|
|
91
|
+
| OpenAI | OpenAI provides various GPT models for conversational AI | `gpt-4o`, `gpt-4o-mini`, `gpt-3.5-turbo`, `gpt-4-turbo` |
|
|
92
|
+
| Groq | Groq offers high-performance AI models optimized for speed | `llama-3.1-8b-instant`, `llama-3.3-70b-specdec` |
|
|
93
|
+
| Ollama | Self-hosted Ollama models | `llama3-groq-tool-use` |
|
|
94
|
+
|
|
95
|
+
> We are constantly updating the list of supported providers and models. If you have a specific model you would like to use, please let us know.
|
|
94
96
|
|
|
95
97
|
## Adding Knowledge Base
|
|
96
98
|
|
|
97
|
-
|
|
99
|
+
A knowledge base provides information to the language model, such as business hours, services, or products.
|
|
100
|
+
|
|
101
|
+
Currently, we support retrieving documents from an S3 bucket.
|
|
102
|
+
|
|
103
|
+
To add a knowledge base, include a new entry in the `knowledgeBase` array in the configuration file. Below is an example of a knowledge for a menu PDF.
|
|
104
|
+
|
|
105
|
+
```json
|
|
106
|
+
{
|
|
107
|
+
"conversationSettings": { ... },
|
|
108
|
+
"languageModel": {
|
|
109
|
+
"provider": "openai",
|
|
110
|
+
"model": "gpt-4o-mini",
|
|
111
|
+
"apiKey": "your-api-key",
|
|
112
|
+
"maxTokens": 100,
|
|
113
|
+
"temperature": 0.4,
|
|
114
|
+
"knowledgeBase": [{
|
|
115
|
+
"type": "s3",
|
|
116
|
+
"title": "Menu PDF",
|
|
117
|
+
"document": "sample.pdf"
|
|
118
|
+
}],
|
|
119
|
+
"tools": []
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
```
|
|
98
123
|
|
|
99
124
|
## Adding Tools
|
|
100
125
|
|
|
@@ -108,8 +133,9 @@ You can configure a new tool by adding a new entry in the `tools` array in the c
|
|
|
108
133
|
"languageModel": {
|
|
109
134
|
"provider": "openai",
|
|
110
135
|
"model": "gpt-4o-mini",
|
|
111
|
-
"
|
|
112
|
-
"
|
|
136
|
+
"apiKey": "your-api-key",
|
|
137
|
+
"maxTokens": 100,
|
|
138
|
+
"temperature": 0.4,
|
|
113
139
|
"knowledgeBase": [],
|
|
114
140
|
"tools": [
|
|
115
141
|
{
|
|
@@ -156,7 +182,20 @@ For example:
|
|
|
156
182
|
{ "result": "The available appointment times are 9:00 AM, 10:00 AM, and 11:00 AM." }
|
|
157
183
|
```
|
|
158
184
|
|
|
185
|
+
## Environment Variables
|
|
186
|
+
|
|
187
|
+
Please use the following environment variables to configure the Autopilot:
|
|
188
|
+
|
|
189
|
+
- `ASSISTANTS`: The path to the configuration file.
|
|
190
|
+
- `OPEN_API_KEY`: The OpenAI API key for embeddings support.
|
|
191
|
+
- `KNOWLEDGE_BASE_ENABLED`: Enable knowledge base powered by AWS S3 and Unstructured API.
|
|
192
|
+
- `AWS_S3_ACCESS_KEY_ID`: The AWS S3 access key.
|
|
193
|
+
- `AWS_S3_SECRET_ACCESS_KEY`: The AWS S3 secret access key.
|
|
194
|
+
- `UNSTRUCTURED_API_KEY`: The Unstructured API key.
|
|
195
|
+
- `UNSTRUCTURED_API_URL`: The Unstructured API URL. Default is `https://api.unstructured.com`.
|
|
196
|
+
|
|
159
197
|
## What's Next
|
|
160
198
|
|
|
161
199
|
The Autopilot is still under heavy development. The next steps are to add support for Retrieval-Augmented Generation(RAG), improve the language model integration, and improve the Finite State Machine (FSM) that powers the conversations. If you have any suggestions or feedback, please let us know.
|
|
162
200
|
|
|
201
|
+
|
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
import { BaseModelParams } from "../types";
|
|
2
2
|
declare enum GroqModel {
|
|
3
|
-
GEMMA7B = "gemma-7b-it",
|
|
4
|
-
LLAMA3_GROQ_70B_8192_TOOL_USE_PREVIEW = "llama3-groq-70b-8192-tool-use-preview",
|
|
5
3
|
LLAMA3_1_8B_INSTANT = "llama-3.1-8b-instant",
|
|
6
4
|
LLAMA3_3_3_70B_SPECDEC = "llama-3.3-70b-specdec"
|
|
7
5
|
}
|
|
@@ -3,8 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.GroqModel = void 0;
|
|
4
4
|
var GroqModel;
|
|
5
5
|
(function (GroqModel) {
|
|
6
|
-
GroqModel["GEMMA7B"] = "gemma-7b-it";
|
|
7
|
-
GroqModel["LLAMA3_GROQ_70B_8192_TOOL_USE_PREVIEW"] = "llama3-groq-70b-8192-tool-use-preview";
|
|
8
6
|
GroqModel["LLAMA3_1_8B_INSTANT"] = "llama-3.1-8b-instant";
|
|
9
7
|
GroqModel["LLAMA3_3_3_70B_SPECDEC"] = "llama-3.3-70b-specdec";
|
|
10
8
|
})(GroqModel || (exports.GroqModel = GroqModel = {}));
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fonoster/autopilot",
|
|
3
|
-
"version": "0.8.
|
|
3
|
+
"version": "0.8.33",
|
|
4
4
|
"description": "Voice AI for the Fonoster platform",
|
|
5
5
|
"author": "Pedro Sanders <psanders@fonoster.com>",
|
|
6
6
|
"homepage": "https://github.com/fonoster/fonoster#readme",
|
|
@@ -35,9 +35,9 @@
|
|
|
35
35
|
"@aws-sdk/client-s3": "^3.712.0",
|
|
36
36
|
"@fonoster/common": "^0.8.31",
|
|
37
37
|
"@fonoster/logger": "^0.8.28",
|
|
38
|
-
"@fonoster/sdk": "^0.8.
|
|
38
|
+
"@fonoster/sdk": "^0.8.33",
|
|
39
39
|
"@fonoster/types": "^0.8.31",
|
|
40
|
-
"@fonoster/voice": "^0.8.
|
|
40
|
+
"@fonoster/voice": "^0.8.32",
|
|
41
41
|
"@langchain/community": "^0.3.19",
|
|
42
42
|
"@langchain/core": "^0.3.23",
|
|
43
43
|
"@langchain/groq": "^0.1.2",
|
|
@@ -55,5 +55,5 @@
|
|
|
55
55
|
"devDependencies": {
|
|
56
56
|
"typescript": "^5.5.4"
|
|
57
57
|
},
|
|
58
|
-
"gitHead": "
|
|
58
|
+
"gitHead": "03b1eb3faa9bbd9a07e3e3e83e7b7ab83a0b328b"
|
|
59
59
|
}
|