mirror of
https://github.com/openclaw/openclaw.git
synced 2026-08-12 21:53:00 -06:00
5b29a1e278
* refactor(providers): consolidate sibling adapters * fix(providers): preserve concrete plugin entry type
28 lines
1021 B
TypeScript
28 lines
1021 B
TypeScript
import { defineSelfHostedOpenAICompatibleProvider } from "openclaw/plugin-sdk/provider-model-shared";
|
|
import {
|
|
VLLM_DEFAULT_API_KEY_ENV_VAR,
|
|
VLLM_DEFAULT_BASE_URL,
|
|
VLLM_MODEL_PLACEHOLDER,
|
|
VLLM_PROVIDER_LABEL,
|
|
} from "./api.js";
|
|
import { wrapVllmProviderStream } from "./stream.js";
|
|
import { resolveThinkingProfile } from "./thinking-policy.js";
|
|
|
|
export default defineSelfHostedOpenAICompatibleProvider({
|
|
id: "vllm",
|
|
label: VLLM_PROVIDER_LABEL,
|
|
hint: "Local/self-hosted OpenAI-compatible server",
|
|
groupHint: "Local/self-hosted OpenAI-compatible",
|
|
defaultBaseUrl: VLLM_DEFAULT_BASE_URL,
|
|
apiKeyEnvVar: VLLM_DEFAULT_API_KEY_ENV_VAR,
|
|
modelPlaceholder: VLLM_MODEL_PLACEHOLDER,
|
|
overrides: {
|
|
buildUnknownModelHint: () =>
|
|
"vLLM requires authentication to be registered as a provider. " +
|
|
'Set VLLM_API_KEY (any value works) or run "openclaw configure". ' +
|
|
"See: https://docs.openclaw.ai/providers/vllm",
|
|
resolveThinkingProfile,
|
|
wrapStreamFn: wrapVllmProviderStream,
|
|
},
|
|
});
|