Mintplex-Labs/anything-llm · error · Error
No TogetherAI API key was set.
Error message
No TogetherAI API key was set.
What it means
Constructor guard in TogetherAiLLM: the TOGETHER_AI_API_KEY environment variable is unset, so the Together AI client cannot authenticate and provider instantiation aborts before model listing or chat.
Solutions
- Set the TogetherAI API key in provider settings or env.
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at provider construction when no TogetherAI API key is configured.
Common situations: TogetherAI selected as LLM provider without an API key.
AI-assisted analysis of Mintplex-Labs/anything-llm@f92433b4ea (2026-08-18).
Data as JSON: /api/errors/364f7b4fe98e9855.
Report an issue: GitHub.
Appendix: source
Thrown at server/utils/AiProviders/togetherAi/index.js:93
return validModels;
} catch (error) {
console.error("Error fetching Together AI models:", error);
// If cache exists but is stale, still use it as fallback
if (fs.existsSync(cacheModelPath)) {
return safeJsonParse(
fs.readFileSync(cacheModelPath, { encoding: "utf-8" }),
[]
);
}
return [];
}
}
class TogetherAiLLM {
constructor(embedder = null, modelPreference = null) {
if (!process.env.TOGETHER_AI_API_KEY)
throw new Error("No TogetherAI API key was set.");
const { OpenAI: OpenAIApi } = require("openai");
this.className = "TogetherAiLLM";
this.openai = new OpenAIApi({
baseURL: "https://api.together.xyz/v1",
apiKey: process.env.TOGETHER_AI_API_KEY ?? null,
});
this.model = modelPreference || process.env.TOGETHER_AI_MODEL_PREF;
this.limits = {
history: this.promptWindowLimit() * 0.15,
system: this.promptWindowLimit() * 0.15,
user: this.promptWindowLimit() * 0.7,
};
this.embedder = !embedder ? new NativeEmbedder() : embedder;
this.defaultTemp = 0.7;
this.log(
`Initialized with model: ${this.model} (context window: ${this.promptWindowLimit()})`
);View on GitHub (pinned to f92433b4ea)