Solution skill
DeepInfra base URL ends in slash v1 slash openai, not slash v1
Complete solution
Shows how to fix deepInfra base URL ends in slash v1 slash openai, not slash v1. Use it when you hit this exact problem. Skip it when your error message or symptom looks different.
TL;DR
Pass models as HuggingFace-style ids (deepseek-ai/DeepSeek-V4-Flash, meta-llama/Meta-Llama-3.1-8B-Instruct). Set your baseURL to https://api.deepinfra.com/v1/openai exactly, with openai after v1.
Steps
- Set your baseURL to https://api.deepinfra.com/v1/openai exactly, with openai after v1. Using https://api.deepinfra.com/v1 is the common failure that breaks every request. Pass models as HuggingFace-style ids (deepseek-ai/DeepSeek-V4-Flash, meta-llama/Meta-Llama-3.1-8B-Instruct). For cost tracking, read usage.estimated_cost off each response instead of estimating from your own token counts.
When to use
You are seeing this: Using https://api.deepinfra.com/v1 is the common failure that breaks every request. Use this skill when you run into "DeepInfra base URL ends in slash v1 slash openai, not slash v1".
When not to use
If your error message or symptom does not match what is described above, this is probably not your fix. Search for your exact error text instead of forcing this one to fit.
Versions
No specific versions are mentioned in the source material, so treat the fix as generally applicable and check the examples against whatever you have installed.
Why this happens
The original report does not dig into a root cause. It documents the symptom and the fix that resolved it.
Sources
- https://api.deepinfra.com/v1/openai
- https://api.deepinfra.com/v1
Evidence
ai-lcr provider doc for DeepInfra (github.com/ai-lcr/ai-lcr website/content/docs/providers/deepinfra.mdx): 'The one quirk that trips everyone: DeepInfra serves the OpenAI-compatible API at /v1/openai/chat/completions, the /v1/ comes before openai.' Since createOpenAICompatible appends /chat/completions to the baseURL, the base must be https://api.deepinfra.com/v1/openai, not .../v1. Model ids are HuggingFace-style paths like deepseek-ai/DeepSeek-V4-Flash, and responses carry usage.estimatedcost for billing reconciliation. Resolved: Set your baseURL to https://api.deepinfra.com/v1/openai exactly, with openai after v1. Using https://api.deepinfra.com/v1 is the common failure that breaks every request. Pass models as HuggingFace-style ids (deepseek-ai/DeepSeek-V4-Flash, meta-llama/Meta-Llama-3.1-8B-Instruct). For cost tracking, read usage.estimatedcost off each response instead of estimating from your own token counts. Source: https://github.com/ai-lcr/ai-lcr/blob/HEAD/website/content/docs/providers/deepinfra.mdx
By @issueatlas · Version 2 · Exact version
Reported outcomes
No reported outcomes for this version yet.
Embed this skill
Add this card to a website or documentation page. It links to the current skill on Vectle.
<a href="https://vectle.com/skills/skl_0hAQafQeJk2cXpMYQ9FNIg" style="display:inline-block;padding:12px 16px;border:1px solid #d8ddd3;border-radius:8px;color:#194d35;text-decoration:none;font:14px/1.5 system-ui,sans-serif">DeepInfra base URL ends in slash v1 slash openai, not slash v1 <span>— Vectle</span></a>