Skip to content

Commit 358e5c0

Browse files
committed
wip
1 parent 714350d commit 358e5c0

File tree

5 files changed

+98
-45
lines changed

5 files changed

+98
-45
lines changed

src/services/autocomplete/AutocompleteModel.ts

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -86,6 +86,11 @@ export class AutocompleteModel {
8686
* @returns ILLM instance or null if configuration is invalid
8787
*/
8888
public createILLMFromProfile(profile: ProviderSettings, provider: AutocompleteProviderKey): ILLM | null {
89+
const model = "codestral-latest"
90+
const apiKey = 'TODO_FILL_THIS_IN'
91+
const apiBase = 'https://api.mistral.ai/v1'
92+
const overrideProvider = 'mistral'
93+
8994
try {
9095
// Extract provider-specific configuration
9196
const config = this.extractProviderConfig(profile, provider)
@@ -96,26 +101,26 @@ export class AutocompleteModel {
96101

97102
// Build LLM options
98103
const llmOptions: LLMOptions = {
99-
model: config.model,
100-
apiKey: config.apiKey,
101-
apiBase: config.apiBase,
104+
model: model || config.model,
105+
apiKey: apiKey || config.apiKey,
106+
apiBase: apiBase || config.apiBase,
102107
contextLength: 32000, // Default for Codestral models
103108
completionOptions: {
104-
model: config.model,
109+
model: model || config.model,
105110
temperature: 0.2, // Lower temperature for more deterministic autocomplete
106111
maxTokens: 256, // Reasonable limit for code completions
107112
},
108113
autocompleteOptions: {
109114
...DEFAULT_AUTOCOMPLETE_OPTS,
110115
useCache: false, // Disable caching for autocomplete
111116
},
112-
uniqueId: `autocomplete-${provider}-${Date.now()}`,
117+
uniqueId: `autocomplete-${overrideProvider || provider}-${Date.now()}`,
113118
}
114119

115120
// Create appropriate LLM instance based on provider
116-
return this.createLLMInstance(provider, llmOptions)
121+
return this.createLLMInstance(overrideProvider || provider, llmOptions)
117122
} catch (error) {
118-
console.error(`[AutocompleteModel] Error creating ILLM for provider ${provider}:`, error)
123+
console.error(`[AutocompleteModel] Error creating ILLM for provider ${overrideProvider || provider}:`, error)
119124
return null
120125
}
121126
}

src/services/continuedev/core/autocomplete/CompletionProvider.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@ export class CompletionProvider {
5555
return undefined
5656
}
5757

58+
5859
// Temporary fix for JetBrains autocomplete bug as described in https://github.com/continuedev/continue/pull/3022
5960
if (llm.model === undefined && llm.completionOptions?.model !== undefined) {
6061
llm.model = llm.completionOptions.model
@@ -75,6 +76,7 @@ export class CompletionProvider {
7576
llm.useLegacyCompletionsEndpoint = true
7677
}
7778

79+
console.log('using LLM', llm)
7880
return llm
7981
}
8082

@@ -136,6 +138,7 @@ export class CompletionProvider {
136138
// Create abort signal if not given
137139
if (!token) {
138140
const controller = this.loggingService.createAbortController(input.completionId)
141+
console.log('creating abort token because none given')
139142
token = controller.signal
140143
}
141144
const startTime = Date.now()
@@ -211,9 +214,12 @@ export class CompletionProvider {
211214

212215
// Don't postprocess if aborted
213216
if (token.aborted) {
217+
console.log('aborted')
214218
return undefined
215219
}
216220

221+
console.log('raw completion', completion)
222+
217223
const processedCompletion = helper.options.transform
218224
? postprocessCompletion({
219225
completion,
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
function getIconFromLevel(level: string): string {
2+
switch (level) {
3+
case 'debug':
4+
return '🔵';
5+
case 'info':
6+
return '🟢';
7+
case 'warn':
8+
return '🟡';
9+
case 'error':
10+
return '🔴';
11+
}
12+
return 'X'
13+
}
14+
15+
export class Logger {
16+
constructor(private filename: string, private includeFilename = false) {}
17+
#formatMessage(level: string, message: string): string {
18+
return `${getIconFromLevel(level)} ${this.includeFilename ? `[${this.filename}] ` : ''}${message}`;
19+
}
20+
debug(message: string, ...args: any[]) {
21+
console.debug(this.#formatMessage('debug', message), ...args);
22+
}
23+
info(message: string, ...args: any[]) {
24+
console.info(this.#formatMessage('info', message), ...args);
25+
}
26+
warn(message: string, ...args: any[]) {
27+
console.info(this.#formatMessage('warn', message), ...args);
28+
}
29+
error(message: string, ...args: any[]) {
30+
console.info(this.#formatMessage('error', message), ...args);
31+
}
32+
}

src/services/continuedev/core/util/treeSitter.ts

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -119,8 +119,11 @@ export const IGNORE_PATH_PATTERNS: Partial<Record<LanguageName, RegExp[]>> = {
119119
}
120120

121121
export async function getParserForFile(filepath: string) {
122+
console.log('getting parser for filePath', filepath)
122123
try {
124+
console.log('calling parser init')
123125
await Parser.init()
126+
console.log('parse init worked')
124127
const parser = new Parser()
125128

126129
const language = await getLanguageForFile(filepath)
@@ -238,12 +241,16 @@ async function loadLanguageForFileExt(fileExtension: string): Promise<Language>
238241

239242
for (const p of candidatePaths) {
240243
if (fs.existsSync(p)) {
244+
console.log('trying to load', p)
241245
return await Language.load(p)
246+
} else {
247+
console.log('not found', p)
242248
}
243249
}
244250

245251
// Fallback (will throw with a clear path in error if still missing)
246252
const fallback = path.join(candidateRoots[0]!, "node_modules", "tree-sitter-wasms", "out", filename)
253+
console.log('loading fallback path', fallback)
247254
return await Language.load(fallback)
248255
}
249256

0 commit comments

Comments
 (0)