122 lines
2.7 KiB
TypeScript
122 lines
2.7 KiB
TypeScript
import type { ModelDefinitionConfig } from "../config/types.js";
|
|
|
|
export const TOGETHER_BASE_URL = "https://api.together.xyz/v1";
|
|
export const TOGETHER_DEFAULT_MODEL_ID = "meta-llama/Llama-3.3-70B-Instruct-Turbo";
|
|
export const TOGETHER_DEFAULT_MODEL_REF = `together/${TOGETHER_DEFAULT_MODEL_ID}`;
|
|
|
|
export const TOGETHER_MODEL_CATALOG = [
|
|
{
|
|
id: "meta-llama/Llama-3.3-70B-Instruct-Turbo",
|
|
name: "Llama 3.3 70B Instruct Turbo",
|
|
reasoning: false,
|
|
input: ["text"],
|
|
contextWindow: 131072,
|
|
maxTokens: 8192,
|
|
cost: {
|
|
input: 0.88,
|
|
output: 0.88,
|
|
cacheRead: 0.88,
|
|
cacheWrite: 0.88,
|
|
},
|
|
},
|
|
{
|
|
id: "meta-llama/Llama-4-Scout-17B-16E-Instruct",
|
|
name: "Llama 4 Scout 17B 16E Instruct",
|
|
reasoning: false,
|
|
input: ["text", "image"],
|
|
contextWindow: 10000000,
|
|
maxTokens: 32768,
|
|
cost: {
|
|
input: 0.18,
|
|
output: 0.59,
|
|
cacheRead: 0.18,
|
|
cacheWrite: 0.18,
|
|
},
|
|
},
|
|
{
|
|
id: "meta-llama/Llama-4-Maverick-17B-128E-Instruct-FP8",
|
|
name: "Llama 4 Maverick 17B 128E Instruct FP8",
|
|
reasoning: false,
|
|
input: ["text", "image"],
|
|
contextWindow: 20000000,
|
|
maxTokens: 32768,
|
|
cost: {
|
|
input: 0.27,
|
|
output: 0.85,
|
|
cacheRead: 0.27,
|
|
cacheWrite: 0.27,
|
|
},
|
|
},
|
|
{
|
|
id: "deepseek-ai/DeepSeek-V3.1",
|
|
name: "DeepSeek V3.1",
|
|
reasoning: false,
|
|
input: ["text"],
|
|
contextWindow: 131072,
|
|
maxTokens: 8192,
|
|
cost: {
|
|
input: 0.6,
|
|
output: 1.25,
|
|
cacheRead: 0.6,
|
|
cacheWrite: 0.6,
|
|
},
|
|
},
|
|
{
|
|
id: "deepseek-ai/DeepSeek-R1",
|
|
name: "DeepSeek R1",
|
|
reasoning: true,
|
|
input: ["text"],
|
|
contextWindow: 131072,
|
|
maxTokens: 8192,
|
|
cost: {
|
|
input: 3.0,
|
|
output: 7.0,
|
|
cacheRead: 3.0,
|
|
cacheWrite: 3.0,
|
|
},
|
|
},
|
|
{
|
|
id: "Qwen/Qwen2.5-72B-Instruct-Turbo",
|
|
name: "Qwen 2.5 72B Instruct Turbo",
|
|
reasoning: false,
|
|
input: ["text"],
|
|
contextWindow: 131072,
|
|
maxTokens: 8192,
|
|
cost: {
|
|
input: 0.35,
|
|
output: 0.8,
|
|
cacheRead: 0.35,
|
|
cacheWrite: 0.35,
|
|
},
|
|
},
|
|
{
|
|
id: "mistralai/Mixtral-8x7B-Instruct-v0.1",
|
|
name: "Mixtral 8x7B Instruct v0.1",
|
|
reasoning: false,
|
|
input: ["text"],
|
|
contextWindow: 32768,
|
|
maxTokens: 8192,
|
|
cost: {
|
|
input: 0.6,
|
|
output: 0.6,
|
|
cacheRead: 0.6,
|
|
cacheWrite: 0.6,
|
|
},
|
|
},
|
|
] as const;
|
|
|
|
export function buildTogetherModelDefinition(
|
|
model: (typeof TOGETHER_MODEL_CATALOG)[number],
|
|
): ModelDefinitionConfig {
|
|
return {
|
|
id: model.id,
|
|
name: model.name,
|
|
api: "openai-completions",
|
|
reasoning: model.reasoning,
|
|
input: [...model.input],
|
|
cost: model.cost,
|
|
contextWindow: model.contextWindow,
|
|
maxTokens: model.maxTokens,
|
|
};
|
|
}
|