82 lines
2.3 KiB
TypeScript
82 lines
2.3 KiB
TypeScript
import { ModelProvider } from "."
|
|
|
|
export type LLMID =
|
|
| OpenAILLMID
|
|
| GoogleLLMID
|
|
| AnthropicLLMID
|
|
| MistralLLMID
|
|
| GroqLLMID
|
|
| PerplexityLLMID
|
|
|
|
// OpenAI Models (UPDATED 5/13/24)
|
|
export type OpenAILLMID =
|
|
| "gpt-4o" // GPT-4o
|
|
| "gpt-4-turbo-preview" // GPT-4 Turbo
|
|
| "gpt-4-vision-preview" // GPT-4 Vision
|
|
| "gpt-4" // GPT-4
|
|
| "gpt-3.5-turbo" // Updated GPT-3.5 Turbo
|
|
|
|
// Google Models
|
|
export type GoogleLLMID =
|
|
| "gemini-pro" // Gemini Pro
|
|
| "gemini-pro-vision" // Gemini Pro Vision
|
|
| "gemini-1.5-pro-latest" // Gemini 1.5 Pro
|
|
| "gemini-1.5-flash" // Gemini 1.5 Flash
|
|
|
|
// Anthropic Models
|
|
export type AnthropicLLMID =
|
|
| "claude-2.1" // Claude 2
|
|
| "claude-instant-1.2" // Claude Instant
|
|
| "claude-3-haiku-20240307" // Claude 3 Haiku
|
|
| "claude-3-sonnet-20240229" // Claude 3 Sonnet
|
|
| "claude-3-opus-20240229" // Claude 3 Opus
|
|
| "claude-3-5-sonnet-20240620" // Claude 3.5 Sonnet
|
|
|
|
// Mistral Models
|
|
export type MistralLLMID =
|
|
| "mistral-tiny" // Mistral Tiny
|
|
| "mistral-small-latest" // Mistral Small
|
|
| "mistral-medium-latest" // Mistral Medium
|
|
| "mistral-large-latest" // Mistral Large
|
|
|
|
export type GroqLLMID =
|
|
| "llama3-8b-8192" // LLaMA3-8b
|
|
| "llama3-70b-8192" // LLaMA3-70b
|
|
| "mixtral-8x7b-32768" // Mixtral-8x7b
|
|
| "gemma-7b-it" // Gemma-7b IT
|
|
|
|
// Perplexity Models (UPDATED 1/31/24)
|
|
export type PerplexityLLMID =
|
|
| "pplx-7b-online" // Perplexity Online 7B
|
|
| "pplx-70b-online" // Perplexity Online 70B
|
|
| "pplx-7b-chat" // Perplexity Chat 7B
|
|
| "pplx-70b-chat" // Perplexity Chat 70B
|
|
| "mixtral-8x7b-instruct" // Mixtral 8x7B Instruct
|
|
| "mistral-7b-instruct" // Mistral 7B Instruct
|
|
| "llama-2-70b-chat" // Llama2 70B Chat
|
|
| "codellama-34b-instruct" // CodeLlama 34B Instruct
|
|
| "codellama-70b-instruct" // CodeLlama 70B Instruct
|
|
| "sonar-small-chat" // Sonar Small Chat
|
|
| "sonar-small-online" // Sonar Small Online
|
|
| "sonar-medium-chat" // Sonar Medium Chat
|
|
| "sonar-medium-online" // Sonar Medium Online
|
|
|
|
export interface LLM {
|
|
modelId: LLMID
|
|
modelName: string
|
|
provider: ModelProvider
|
|
hostedId: string
|
|
platformLink: string
|
|
imageInput: boolean
|
|
pricing?: {
|
|
currency: string
|
|
unit: string
|
|
inputCost: number
|
|
outputCost?: number
|
|
}
|
|
}
|
|
|
|
export interface OpenRouterLLM extends LLM {
|
|
maxContext: number
|
|
}
|