SPB Git

spb/polyllm

Public
4.4 KB · 107 lines typescript
1import type { ProviderId } from "@/lib/ai/core/types";23/**4 * Illustrative models used by the marketing mocks. These are product mocks: names are real,5 * numbers are representative, nothing here talks to a provider.6 */7export interface MockModel {8  key: string;9  provider: ProviderId;10  name: string;11  context: string;12  input: string; // $/M tokens13  output: string;14  caps: {15    temperature: boolean;16    topK: boolean;17    reasoningEffort: boolean;18    thinkingBudget: boolean;19    verbosity: boolean;20    jsonSchema: boolean;21    tools: boolean;22    webSearch: boolean;23    vision: boolean;24  };25}2627export const MOCK_MODELS: MockModel[] = [28  {29    key: "anthropic/claude-opus-5",30    provider: "anthropic",31    name: "Claude Opus 5",32    context: "1M",33    input: "$5.00",34    output: "$25.00",35    caps: { temperature: true, topK: false, reasoningEffort: false, thinkingBudget: true, verbosity: false, jsonSchema: true, tools: true, webSearch: true, vision: true },36  },37  {38    key: "openai/gpt-5.5",39    provider: "openai",40    name: "GPT-5.5",41    context: "400K",42    input: "$1.25",43    output: "$10.00",44    caps: { temperature: false, topK: false, reasoningEffort: true, thinkingBudget: false, verbosity: true, jsonSchema: true, tools: true, webSearch: true, vision: true },45  },46  {47    key: "gemini/gemini-3.8-flash",48    provider: "gemini",49    name: "Gemini 3.8 Flash",50    context: "1M",51    input: "$0.30",52    output: "$2.50",53    caps: { temperature: true, topK: true, reasoningEffort: false, thinkingBudget: true, verbosity: false, jsonSchema: true, tools: true, webSearch: true, vision: true },54  },55  {56    key: "xai/grok-4.6",57    provider: "xai",58    name: "Grok 4.6",59    context: "256K",60    input: "$3.00",61    output: "$15.00",62    caps: { temperature: true, topK: false, reasoningEffort: true, thinkingBudget: false, verbosity: false, jsonSchema: true, tools: true, webSearch: true, vision: true },63  },64];6566export const PROVIDER_LABEL: Record<ProviderId, string> = {67  openai: "OpenAI",68  anthropic: "Anthropic",69  gemini: "Google Gemini",70  xai: "xAI",71};7273export const FAQ_ITEMS: { q: string; a: string }[] = [74  {75    q: "Do you see my API keys?",76    a: "No. Keys are encrypted with AES-256-GCM before they touch the database and are decrypted server-side only for the duration of a request to the provider you selected. They are never sent to the browser, never logged, and the UI only ever shows a hint like sk-••••••••9A2K. You can revoke a key from PolyLLM or from the provider console at any time.",77  },78  {79    q: "Do you store my conversations?",80    a: "Yes, so you can come back to them. Conversations, messages and usage metadata live in PolyLLM's own Postgres database and are only readable by you. You can export everything as JSON or delete a conversation, a folder or your whole account whenever you want. Deletion is immediate.",81  },82  {83    q: "Which models can I use?",84    a: "Every model your keys unlock: the current OpenAI GPT and o-series, Anthropic Claude (Opus, Sonnet, Haiku), Google Gemini Flash and Pro, and xAI Grok. PolyLLM syncs each provider's model list and capability sheet so new releases appear as soon as your key can reach them.",85  },86  {87    q: "Is PolyLLM free?",88    a: "PolyLLM itself is free. You bring your own API keys and pay the providers directly for the tokens you use, at their list prices, with no markup. PolyLLM shows you a cost estimate for every request so nothing is a surprise.",89  },90  {91    q: "Where do my prompts go?",92    a: "Only to the provider behind the model you picked, straight from PolyLLM's server. Nothing is proxied through third-party inference services, and nothing is used for training by PolyLLM.",93  },94  {95    q: "What is the Arena?",96    a: "Send one prompt to up to four models at once and watch the answers stream side by side, with tokens, latency and cost for each. Rate the responses to build your own picture of which model is worth its price for your work.",97  },98  {99    q: "Can I use it on my phone?",100    a: "Yes. PolyLLM is a responsive web app that works in any modern browser, with a layout designed for small screens first. Install it to your home screen and it behaves like a native app.",101  },102  {103    q: "Can I export or delete my data?",104    a: "Always. A full account export (conversations, settings, usage) is one click away in Settings, and account deletion removes every row we hold about you, including encrypted keys.",105  },106];107
Files · d6f683a5f3ce2650916bcde9467e60c640c62fa9
Menu

Theme