Welcome to Orcide
- {/* Slice of Void image */}
+ {/* Orcide logo */}
- {!isLinux && }
+
diff --git a/src/vs/workbench/contrib/void/common/modelCapabilities.ts b/src/vs/workbench/contrib/void/common/modelCapabilities.ts
index aee4544d..9e59cb37 100644
--- a/src/vs/workbench/contrib/void/common/modelCapabilities.ts
+++ b/src/vs/workbench/contrib/void/common/modelCapabilities.ts
@@ -66,8 +66,7 @@ export const defaultProviderSettings = {
endpoint: '', // optionally allow overriding default
},
orcestAI: {
- endpoint: 'https://rm.orcest.ai/v1',
- apiKey: '', // Will be populated from environment/SSO
+ endpoint: 'https://ollamafreeapi.orcest.ai/v1',
},
} as const
@@ -149,15 +148,13 @@ export const defaultModelsOfProvider = {
awsBedrock: [],
liteLLM: [],
orcestAI: [
- 'rainymodel-pro',
- 'rainymodel-standard',
- 'rainymodel-lite',
- 'gpt-4o',
- 'gpt-4o-mini',
- 'claude-3.5-sonnet',
- 'gemini-1.5-pro',
- 'llama-3.1-70b',
- 'mixtral-8x7b',
+ 'llama3.2:latest',
+ 'llama3.1:latest',
+ 'llama3.3:latest',
+ 'mistral:latest',
+ 'deepseek-r1:latest',
+ 'qwen2.5-coder:7b',
+ 'gemma:latest',
],
@@ -1455,48 +1452,19 @@ const openRouterSettings: VoidStaticProviderInfo = {
-// ---------------- ORCEST AI (RainyModel) ----------------
+// ---------------- ORCEST AI (OllamaFreeAPI) ----------------
const orcestAIModelOptions = {
- 'rainymodel-pro': {
- contextWindow: 128_000,
- reservedOutputTokenSpace: 8_192,
- cost: { input: 0, output: 0 },
- downloadable: false,
- supportsFIM: false,
- supportsSystemMessage: 'system-role',
- specialToolFormat: 'openai-style',
- reasoningCapabilities: false,
- },
- 'rainymodel-standard': {
- contextWindow: 128_000,
- reservedOutputTokenSpace: 8_192,
- cost: { input: 0, output: 0 },
- downloadable: false,
- supportsFIM: false,
- supportsSystemMessage: 'system-role',
- specialToolFormat: 'openai-style',
- reasoningCapabilities: false,
- },
- 'rainymodel-lite': {
- contextWindow: 64_000,
- reservedOutputTokenSpace: 4_096,
- cost: { input: 0, output: 0 },
- downloadable: false,
- supportsFIM: false,
- supportsSystemMessage: 'system-role',
- specialToolFormat: 'openai-style',
- reasoningCapabilities: false,
- },
} as const satisfies { [s: string]: VoidStaticModelInfo }
const orcestAISettings: VoidStaticProviderInfo = {
modelOptions: orcestAIModelOptions,
modelOptionsFallback: (modelName) => {
- // For non-RainyModel models served through the aggregator, use the extensive fallback
- return extensiveModelOptionsFallback(modelName)
+ // OllamaFreeAPI serves 650+ open-source models, use extensive fallback for capability detection
+ return extensiveModelOptionsFallback(modelName, { cost: { input: 0, output: 0 } })
},
providerReasoningIOSettings: {
input: { includeInPayload: openAICompatIncludeInPayloadReasoning },
+ output: { needsManualParse: true },
},
}
diff --git a/src/vs/workbench/contrib/void/common/sendLLMMessageService.ts b/src/vs/workbench/contrib/void/common/sendLLMMessageService.ts
index 3132934a..eed84f0d 100644
--- a/src/vs/workbench/contrib/void/common/sendLLMMessageService.ts
+++ b/src/vs/workbench/contrib/void/common/sendLLMMessageService.ts
@@ -206,7 +206,7 @@ if (!isWeb) {
groq: 'https://api.groq.com/openai/v1',
xAI: 'https://api.x.ai/v1',
mistral: 'https://api.mistral.ai/v1',
- orcestAI: 'https://rm.orcest.ai/v1',
+ orcestAI: 'https://ollamafreeapi.orcest.ai/v1',
};
class LLMMessageServiceWeb extends Disposable implements ILLMMessageService {
@@ -220,7 +220,7 @@ if (!isWeb) {
sendLLMMessage = (params: ServiceSendLLMMessageParams): string | null => {
const { onText, onFinalMessage, onError, modelSelection } = params;
if (modelSelection === null) {
- onError({ message: `Please add a provider in Void's Settings.`, fullError: null });
+ onError({ message: `Please add a provider in Orcide's Settings.`, fullError: null });
return null;
}
const requestId = generateUuid();
diff --git a/src/vs/workbench/contrib/void/common/voidSettingsTypes.ts b/src/vs/workbench/contrib/void/common/voidSettingsTypes.ts
index a093517a..62a7e62e 100644
--- a/src/vs/workbench/contrib/void/common/voidSettingsTypes.ts
+++ b/src/vs/workbench/contrib/void/common/voidSettingsTypes.ts
@@ -107,7 +107,7 @@ export const displayInfoOfProviderName = (providerName: ProviderName): DisplayIn
return { title: 'AWS Bedrock', }
}
else if (providerName === 'orcestAI') {
- return { title: 'Orcest AI (RainyModel)', }
+ return { title: 'Orcest AI (Free)', }
}
throw new Error(`descOfProviderName: Unknown provider name: "${providerName}"`)
@@ -131,7 +131,7 @@ export const subTextMdOfProviderName = (providerName: ProviderName): string => {
if (providerName === 'vLLM') return 'Read more about custom [Endpoints here](https://docs.vllm.ai/en/latest/getting_started/quickstart.html#openai-compatible-server).'
if (providerName === 'lmStudio') return 'Read more about custom [Endpoints here](https://lmstudio.ai/docs/app/api/endpoints/openai).'
if (providerName === 'liteLLM') return 'Read more about endpoints [here](https://docs.litellm.ai/docs/providers/openai_compatible).'
- if (providerName === 'orcestAI') return 'Orcest AI integrated API. Models are available automatically through your SSO login. Powered by [RainyModel](https://rm.orcest.ai).'
+ if (providerName === 'orcestAI') return 'Orcest AI free API. No API key required. Powered by [OllamaFreeAPI](https://ollamafreeapi.orcest.ai) with 650+ open-source models.'
throw new Error(`subTextMdOfProviderName: Unknown provider name: "${providerName}"`)
}
@@ -160,7 +160,6 @@ export const displayInfoOfSettingName = (providerName: ProviderName, settingName
providerName === 'googleVertex' ? 'AIzaSy...' :
providerName === 'microsoftAzure' ? 'key-...' :
providerName === 'awsBedrock' ? 'key-...' :
- providerName === 'orcestAI' ? 'sk-orcest-key...' :
'',
isPasswordField: true,
@@ -186,7 +185,7 @@ export const displayInfoOfSettingName = (providerName: ProviderName, settingName
: providerName === 'liteLLM' ? 'http://localhost:4000'
: providerName === 'awsBedrock' ? 'http://localhost:4000/v1'
: providerName === 'orcestAI' ? defaultProviderSettings.orcestAI.endpoint
- : '(never)',
+ : '(never)'
}