symposium 0.3.6 → 0.4.1

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/Model.js CHANGED
@@ -8,7 +8,7 @@ export default class Model {
8
8
 
9
9
  constructor() {
10
10
  if (!this.label)
11
- this.label = this.name;label
11
+ this.label = this.name;
12
12
  if (!this.name_for_tiktoken)
13
13
  this.name_for_tiktoken = this.name;
14
14
  }
@@ -0,0 +1,25 @@
1
+ import Model from "../Model.js";
2
+ import Anthropic from '@anthropic-ai/sdk';
3
+
4
+ export default class AnthropicModel extends Model {
5
+ anthropic;
6
+ supports_tools = false;
7
+
8
+ getAnthropic() {
9
+ if (!this.anthropic)
10
+ this.anthropic = new Anthropic({apiKey: process.env.ANTHROPIC_API_KEY});
11
+
12
+ return this.anthropic;
13
+ }
14
+
15
+ async generate(thread, payload = {}, functions = []) {
16
+ const completion_payload = {
17
+ model: this.name,
18
+ messages: thread.getMessagesJson(),
19
+ ...payload,
20
+ };
21
+
22
+ const message = await this.getAnthropic().messages.create(completion_payload);
23
+ return message.content;
24
+ }
25
+ }
@@ -0,0 +1,7 @@
1
+ import AnthropicModel from "./AnthropicModel.js";
2
+
3
+ export default class Claude3Haiku extends AnthropicModel {
4
+ name = 'claude-3-haiku-20240307';
5
+ label = 'claude-3-haiku';
6
+ tokens = 200000;
7
+ }
@@ -0,0 +1,7 @@
1
+ import AnthropicModel from "./AnthropicModel.js";
2
+
3
+ export default class Claude3Opus extends AnthropicModel {
4
+ name = 'claude-3-opus-20240229';
5
+ label = 'claude-3-opus';
6
+ tokens = 200000;
7
+ }
@@ -0,0 +1,7 @@
1
+ import AnthropicModel from "./AnthropicModel.js";
2
+
3
+ export default class Claude3Sonnet extends AnthropicModel {
4
+ name = 'claude-3-sonnet-20240229';
5
+ label = 'claude-3-sonnet';
6
+ tokens = 200000;
7
+ }
package/models/Gpt4.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import OpenAIModel from "./OpenAIModel.js";
2
2
 
3
- export default class Gpt4 extends OpenAIModel {
3
+ export default class Gpt4 extends OpenAIModel {
4
4
  name = 'gpt-4';
5
5
  label = 'gpt-4';
6
6
  tokens = 8192;
package/models/Whisper.js CHANGED
@@ -7,11 +7,11 @@ export default class Whisper extends OpenAIModel {
7
7
  async transcribe(agent, thread, file) {
8
8
  const words = await agent.getPromptWordsForTranscription(thread);
9
9
 
10
- const response = await this.getOpenAi().then(openai => openai.audio.transcriptions.create({
10
+ const response = await this.getOpenAi().audio.transcriptions.create({
11
11
  file,
12
12
  model: 'whisper-1',
13
13
  prompt: words.join(', '),
14
- }));
14
+ });
15
15
  return response.text;
16
16
  }
17
17
  }
package/package.json CHANGED
@@ -1,12 +1,13 @@
1
1
  {
2
2
  "type": "module",
3
3
  "name": "symposium",
4
- "version": "0.3.6",
4
+ "version": "0.4.1",
5
5
  "description": "Agents",
6
6
  "main": "index.js",
7
7
  "author": "Domenico Giambra",
8
8
  "license": "ISC",
9
9
  "dependencies": {
10
+ "@anthropic-ai/sdk": "^0.19.1",
10
11
  "@travio/redis": "^2.0.0",
11
12
  "openai": "^4.12.1",
12
13
  "tiktoken": "^1.0.10"