From f5ac3ce64a01dd2aac6dec6aac7e42786256b538 Mon Sep 17 00:00:00 2001 From: yann300 Date: Sun, 19 Nov 2023 10:25:22 +0100 Subject: [PATCH] use llm --- .../src/lib/providers/inlineCompletionProvider.ts | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/libs/remix-ui/editor/src/lib/providers/inlineCompletionProvider.ts b/libs/remix-ui/editor/src/lib/providers/inlineCompletionProvider.ts index 9cb25c4fa9..916a48be69 100644 --- a/libs/remix-ui/editor/src/lib/providers/inlineCompletionProvider.ts +++ b/libs/remix-ui/editor/src/lib/providers/inlineCompletionProvider.ts @@ -1,4 +1,5 @@ import { EditorUIProps, monacoTypes } from '@remix-ui/editor'; +import axios, {AxiosResponse} from 'axios' const controller = new AbortController(); const { signal } = controller; const result: string = '' @@ -29,12 +30,26 @@ export class RemixInLineCompletionProvider implements monacoTypes.languages.Inli return; } + const generativeComment = word.match(/\/\/(.*)\n /) + if (generativeComment[1]) { + // use the code generation model + const {data} = await axios.post('https://llm.remix-project.org', {comment: generativeComment[1]}) + const item: monacoTypes.languages.InlineCompletion = { + insertText: data + }; + return { + items: [item], + enableForwardStability: true + } + } + // abort if there is a signal if (token.isCancellationRequested) { console.log('aborted') return } + console.log(word) let result try { result = await this.props.plugin.call('copilot-suggestion', 'suggest', word)