From 2161d740dfd9961ea24ff056b2504160400c848f Mon Sep 17 00:00:00 2001 From: Andrew Pareles Date: Tue, 11 Feb 2025 16:44:40 -0800 Subject: [PATCH] minor change --- .../void/browser/autocompleteService.ts | 3 +-- .../void/electron-main/llmMessage/openai.ts | 18 ++---------------- .../llmMessage/sendLLMMessage.ts | 19 +++++++------------ 3 files changed, 10 insertions(+), 30 deletions(-) diff --git a/src/vs/workbench/contrib/void/browser/autocompleteService.ts b/src/vs/workbench/contrib/void/browser/autocompleteService.ts index 77ac8807..aa8902f3 100644 --- a/src/vs/workbench/contrib/void/browser/autocompleteService.ts +++ b/src/vs/workbench/contrib/void/browser/autocompleteService.ts @@ -784,8 +784,7 @@ export class AutocompleteService extends Disposable implements IAutocompleteServ _newlineCount: 0, } - console.log('BB') - console.log('type', predictionType) + console.log('starting autocomplete...', predictionType) // set parameters of `newAutocompletion` appropriately newAutocompletion.llmPromise = new Promise((resolve, reject) => { diff --git a/src/vs/workbench/contrib/void/electron-main/llmMessage/openai.ts b/src/vs/workbench/contrib/void/electron-main/llmMessage/openai.ts index 1ac2a748..df4d2322 100644 --- a/src/vs/workbench/contrib/void/electron-main/llmMessage/openai.ts +++ b/src/vs/workbench/contrib/void/electron-main/llmMessage/openai.ts @@ -109,23 +109,9 @@ export const openaiCompatibleList: _InternalModelListFnType = async ({ on export const sendOpenAIFIM: _InternalSendLLMFIMMessageFnType = ({ messages, onText, onFinalMessage, onError, settingsOfProvider, modelName, _setAborter, providerName }) => { - const openai: OpenAI = newOpenAI({ providerName, settingsOfProvider }) + // openai.completions has a FIM parameter called `suffix`, but it's deprecated and only works for ~GPT 3 era models - const options: OpenAI.Completions.CompletionCreateParamsStreaming = { - prompt: messages.prefix, - suffix: messages.suffix, - model: modelName, - stream: true, - // max_completion_tokens: parseMaxTokensStr(thisConfig.maxTokens) - } - - - openai.completions - .create(options) - .then(async response => { - // TODO!!! - console.log('RESPONSE', response) - }) + onFinalMessage({ fullText: 'TODO' }) } diff --git a/src/vs/workbench/contrib/void/electron-main/llmMessage/sendLLMMessage.ts b/src/vs/workbench/contrib/void/electron-main/llmMessage/sendLLMMessage.ts index ffffc223..1364e251 100644 --- a/src/vs/workbench/contrib/void/electron-main/llmMessage/sendLLMMessage.ts +++ b/src/vs/workbench/contrib/void/electron-main/llmMessage/sendLLMMessage.ts @@ -8,7 +8,7 @@ import { IMetricsService } from '../../common/metricsService.js'; import { sendAnthropicChat } from './anthropic.js'; import { sendOllamaFIM, sendOllamaChat } from './ollama.js'; -import { sendOpenAIChat } from './openai.js'; +import { sendOpenAIChat, sendOpenAIFIM } from './openai.js'; import { sendGeminiChat } from './gemini.js'; import { sendGroqChat } from './groq.js'; import { sendMistralChat } from './mistral.js'; @@ -143,21 +143,16 @@ export const sendLLMMessage = ({ case 'openRouter': case 'deepseek': case 'openAICompatible': - sendOpenAIChat({ messages: messagesArr, onText, onFinalMessage, onError, settingsOfProvider, modelName, _setAborter, providerName }); + if (messagesType === 'FIMMessage') sendOpenAIFIM({ messages: messages_, onText, onFinalMessage, onError, settingsOfProvider, modelName, _setAborter, providerName }); + else /* */ sendOpenAIChat({ messages: messagesArr, onText, onFinalMessage, onError, settingsOfProvider, modelName, _setAborter, providerName }); + break; + case 'ollama': + if (messagesType === 'FIMMessage') sendOllamaFIM({ messages: messages_, onText, onFinalMessage, onError, settingsOfProvider, modelName, _setAborter, providerName }) + else /* */ sendOllamaChat({ messages: messagesArr, onText, onFinalMessage, onError, settingsOfProvider, modelName, _setAborter, providerName }) break; case 'gemini': sendGeminiChat({ messages: messagesArr, onText, onFinalMessage, onError, settingsOfProvider, modelName, _setAborter, providerName }); break; - case 'ollama': - if ( // TODO @andrew in future we want to use our own templates instead of using ollamaFIM - messagesType === 'FIMMessage' - && settingsOfProvider['ollama']._didFillInProviderSettings - && settingsOfProvider['ollama'].models.some(m => !m.isHidden) - ) - sendOllamaFIM({ messages: messages_, onText, onFinalMessage, onError, settingsOfProvider, modelName, _setAborter, providerName }) - else - sendOllamaChat({ messages: messagesArr, onText, onFinalMessage, onError, settingsOfProvider, modelName, _setAborter, providerName }); - break; case 'groq': sendGroqChat({ messages: messagesArr, onText, onFinalMessage, onError, settingsOfProvider, modelName, _setAborter, providerName }); break;