Is the key optional for a cloud-proxy upstream?
Maintainers usually reply within 3 days
Nobody has claimed this yet.
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 68/100
- Issue type
- Documentation
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- go
- Domain
- cloud, documentation
Research direction
Start with the cloud-proxy documentation and the resolveAPIKey, load path, and doOpenAIRequest entry points described in the issue. Verify how an unset key is handled, then clarify the documented expectation for keyless upstreams and include the relevant model configuration if supported. Done means the page no longer implies that every upstream requires a key.
Written by the indexing model from the issue text.
Description
The cloud passthrough proxy is the part of LocalAI that lets one endpoint serve local and hosted models side by side, and your docs describe a model for it as backend: cloud-proxy with a proxy.upstream_url, where the key comes from api_key_env or api_key_file. Every example on that page loads a key that way, including the section for other OpenAI-compatible providers, which says to use provider: openai with the provider's URL and API key.
In the backend itself the key is not strictly required. resolveAPIKey returns an empty string with no error when both fields are unset, the load path only records whether a key was found, and doOpenAIRequest applies the auth header only when the key is not empty, so an upstream that never asks for one already works while the docs never name that case. The upstream I have in mind is BlockRun: one OpenAI-compatible base URL where chat, image, video, music, speech and sound effects ride the same payment flow, every call settles in USDC over x402, and there is no API key to hold, which leaves a cloud-proxy model with no api_key_env at all. https://blockrun.ai
So I wanted to ask whether that empty key path is deliberate, meaning a keyless upstream is a shape cloud-proxy is meant to carry, or whether a key is expected and the resolver is only being forgiving. The page reads as though an account somewhere is part of every cloud hop, which is why I would rather ask than assume. Happy to send the exact model config I pointed at BlockRun if a keyless example would be useful, and just as happy to be told that lane stays with keys.
- Dominant language
- Go
- Stars
- 49.2k
- Forks
- 4.5k
- Avg merge
- 19h 42m
- Merged PRs (30d)
- 299
Getting set up
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from mudler/LocalAI
-
bug unconfirmed
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
Maintainers usually reply within 3 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
mudler/LocalAI#11995 · 1 comment ·
Maintainers usually reply within 3 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
mudler/LocalAI#11991 · 1 comment ·
Maintainers usually reply within 3 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
mudler/LocalAI#11973 · 1 comment ·
Maintainers usually reply within 3 days
-
Quantization import always writes backend: llama-cpp, ignoring the backend that produced the modelOpen
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 3 days
Similar issues
-
security
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
-
cvss-severity:high devguard l3montree-cybersecurity/...ard-k8s-image-inventory pkg:oci/devguard-k8s-ima...ch=amd64&tag=main-amd64 pkg:oci/devguard-k8s-ima...ch=arm64&tag=main-arm64 risk:low state:open
Difficulty 1/5 Under an hour Newbie friendliness 76/100
l3montree-dev/devguard#3094 · 1 comment ·
Maintainers usually reply within 1 day
-
Difficulty 1/5 Under an hour Newbie friendliness 84/100
JuliusBrussee/caveman#1127 · 1 comment ·
Maintainers usually reply within 1 day
-
enhancement low priority
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
eugenioenko/ttt#674 ·
Maintainers usually reply within 1 day
-
kind/bug
Difficulty 2/5 1-3 hours Newbie friendliness 86/100
gpustack/gpustack-operator#640 ·
Maintainers usually reply within 1 day