File tree 5 files changed +77
-1
lines changed
5 files changed +77
-1
lines changed Original file line number Diff line number Diff line change @@ -87,6 +87,13 @@ EMBEDDING_OPENAI_MODEL= # Default: text-embedding-3-small
87
87
IMAGE_OPENAI_MODEL = # Default: dall-e-3
88
88
USE_OPENAI_EMBEDDING = # Set to TRUE for OpenAI/1536, leave blank for local
89
89
90
+ # Atoma SDK Configuration
91
+ ATOMASDK_BEARER_AUTH = # Atoma SDK Bearer Auth token
92
+ ATOMA_API_URL = # Default: https://api.atoma.network/v1
93
+ SMALL_ATOMA_MODEL = # Default: meta-llama/Llama-3.3-70B-Instruct
94
+ MEDIUM_ATOMA_MODEL = # Default: meta-llama/Llama-3.3-70B-Instruct
95
+ LARGE_ATOMA_MODEL = # Default: meta-llama/Llama-3.3-70B-Instruct
96
+
90
97
# Eternal AI's Decentralized Inference API
91
98
ETERNALAI_URL =
92
99
ETERNALAI_MODEL = # Default: "NousResearch/Hermes-3-Llama-3.1-70B-FP8"
Original file line number Diff line number Diff line change @@ -476,6 +476,11 @@ export function getTokenForProvider(
476
476
character . settings ?. secrets ?. VENICE_API_KEY ||
477
477
settings . VENICE_API_KEY
478
478
) ;
479
+ case ModelProviderName . ATOMA :
480
+ return (
481
+ character . settings ?. secrets ?. ATOMASDK_BEARER_AUTH ||
482
+ settings . ATOMASDK_BEARER_AUTH
483
+ ) ;
479
484
case ModelProviderName . AKASH_CHAT_API :
480
485
return (
481
486
character . settings ?. secrets ?. AKASH_CHAT_API_KEY ||
Original file line number Diff line number Diff line change @@ -1032,6 +1032,36 @@ export async function generateText({
1032
1032
break ;
1033
1033
}
1034
1034
1035
+ case ModelProviderName . ATOMA : {
1036
+ elizaLogger . debug ( "Initializing Atoma model." ) ;
1037
+ const atoma = createOpenAI ( {
1038
+ apiKey,
1039
+ baseURL : endpoint ,
1040
+ fetch : runtime . fetch ,
1041
+ } ) ;
1042
+
1043
+ const { text : atomaResponse } = await aiGenerateText ( {
1044
+ model : atoma . languageModel ( model ) ,
1045
+ prompt : context ,
1046
+ system :
1047
+ runtime . character . system ??
1048
+ settings . SYSTEM_PROMPT ??
1049
+ undefined ,
1050
+ tools : tools ,
1051
+ onStepFinish : onStepFinish ,
1052
+ maxSteps : maxSteps ,
1053
+ temperature : temperature ,
1054
+ maxTokens : max_response_length ,
1055
+ frequencyPenalty : frequency_penalty ,
1056
+ presencePenalty : presence_penalty ,
1057
+ experimental_telemetry : experimental_telemetry ,
1058
+ } ) ;
1059
+
1060
+ response = atomaResponse ;
1061
+ elizaLogger . debug ( "Received response from Atoma model." ) ;
1062
+ break ;
1063
+ }
1064
+
1035
1065
case ModelProviderName . GALADRIEL : {
1036
1066
elizaLogger . debug ( "Initializing Galadriel model." ) ;
1037
1067
const headers = { } ;
@@ -2417,4 +2447,4 @@ export async function generateTweetActions({
2417
2447
await new Promise ( ( resolve ) => setTimeout ( resolve , retryDelay ) ) ;
2418
2448
retryDelay *= 2 ;
2419
2449
}
2420
- }
2450
+ }
Original file line number Diff line number Diff line change @@ -998,6 +998,38 @@ export const models: Models = {
998
998
} ,
999
999
} ,
1000
1000
} ,
1001
+ [ ModelProviderName . ATOMA ] : {
1002
+ endpoint : settings . ATOMA_API_URL || "https://api.atoma.network/v1" ,
1003
+ model : {
1004
+ [ ModelClass . SMALL ] : {
1005
+ name :
1006
+ settings . SMALL_ATOMA_MODEL ||
1007
+ "meta-llama/Llama-3.3-70B-Instruct" ,
1008
+ stop : [ ] ,
1009
+ maxInputTokens : 128000 ,
1010
+ maxOutputTokens : 8192 ,
1011
+ temperature : 0.7 ,
1012
+ } ,
1013
+ [ ModelClass . MEDIUM ] : {
1014
+ name :
1015
+ settings . MEDIUM_ATOMA_MODEL ||
1016
+ "meta-llama/Llama-3.3-70B-Instruct" ,
1017
+ stop : [ ] ,
1018
+ maxInputTokens : 128000 ,
1019
+ maxOutputTokens : 8192 ,
1020
+ temperature : 0.7 ,
1021
+ } ,
1022
+ [ ModelClass . LARGE ] : {
1023
+ name :
1024
+ settings . LARGE_ATOMA_MODEL ||
1025
+ "meta-llama/Llama-3.3-70B-Instruct" ,
1026
+ stop : [ ] ,
1027
+ maxInputTokens : 128000 ,
1028
+ maxOutputTokens : 8192 ,
1029
+ temperature : 0.7 ,
1030
+ } ,
1031
+ } ,
1032
+ } ,
1001
1033
} ;
1002
1034
1003
1035
export function getModelSettings (
Original file line number Diff line number Diff line change @@ -229,6 +229,7 @@ export type Models = {
229
229
[ ModelProviderName . LIVEPEER ] : Model ;
230
230
[ ModelProviderName . DEEPSEEK ] : Model ;
231
231
[ ModelProviderName . INFERA ] : Model ;
232
+ [ ModelProviderName . ATOMA ] : Model ;
232
233
} ;
233
234
234
235
/**
@@ -264,6 +265,7 @@ export enum ModelProviderName {
264
265
LETZAI = "letzai" ,
265
266
DEEPSEEK = "deepseek" ,
266
267
INFERA = "infera" ,
268
+ ATOMA = "atoma" ,
267
269
}
268
270
269
271
/**
You can’t perform that action at this time.
0 commit comments