Merge pull request #2927 from github/robertbrignull/generateMethodsFromLlm

Only include method signatures in generateMethodsFromLlm message
This commit is contained in:
Robert
2023-10-10 10:19:20 +01:00
committed by GitHub
5 changed files with 20 additions and 19 deletions

View File

@@ -556,8 +556,7 @@ interface GenerateMethodMessage {
interface GenerateMethodsFromLlmMessage {
t: "generateMethodsFromLlm";
packageName: string;
methods: Method[];
modeledMethods: Record<string, ModeledMethod>;
methodSignatures: string[];
}
interface StopGeneratingMethodsFromLlmMessage {

View File

@@ -267,8 +267,7 @@ export class ModelEditorView extends AbstractWebview<
case "generateMethodsFromLlm":
await this.generateModeledMethodsFromLlm(
msg.packageName,
msg.methods,
msg.modeledMethods,
msg.methodSignatures,
);
void telemetryListener?.sendUIInteraction(
"model-editor-generate-methods-from-llm",
@@ -474,9 +473,16 @@ export class ModelEditorView extends AbstractWebview<
private async generateModeledMethodsFromLlm(
packageName: string,
methods: Method[],
modeledMethods: Record<string, ModeledMethod>,
methodSignatures: string[],
): Promise<void> {
const methods = this.modelingStore.getMethods(
this.databaseItem,
methodSignatures,
);
const modeledMethods = this.modelingStore.getModeledMethods(
this.databaseItem,
methodSignatures,
);
await this.autoModeler.startModeling(
packageName,
methods,

View File

@@ -81,8 +81,7 @@ export type LibraryRowProps = {
onSaveModelClick: (methodSignatures: string[]) => void;
onGenerateFromLlmClick: (
dependencyName: string,
methods: Method[],
modeledMethods: Record<string, ModeledMethod>,
methodSignatures: string[],
) => void;
onStopGenerateFromLlmClick: (dependencyName: string) => void;
onGenerateFromSourceClick: () => void;
@@ -126,11 +125,14 @@ export const LibraryRow = ({
const handleModelWithAI = useCallback(
async (e: React.MouseEvent) => {
onGenerateFromLlmClick(title, methods, modeledMethods);
onGenerateFromLlmClick(
title,
methods.map((m) => m.signature),
);
e.stopPropagation();
e.preventDefault();
},
[title, methods, modeledMethods, onGenerateFromLlmClick],
[title, methods, onGenerateFromLlmClick],
);
const handleStopModelWithAI = useCallback(

View File

@@ -219,16 +219,11 @@ export function ModelEditor({
}, []);
const onGenerateFromLlmClick = useCallback(
(
packageName: string,
methods: Method[],
modeledMethods: Record<string, ModeledMethod>,
) => {
(packageName: string, methodSignatures: string[]) => {
vscode.postMessage({
t: "generateMethodsFromLlm",
packageName,
methods,
modeledMethods,
methodSignatures,
});
},
[],

View File

@@ -23,8 +23,7 @@ export type ModeledMethodsListProps = {
onSaveModelClick: (methodSignatures: string[]) => void;
onGenerateFromLlmClick: (
packageName: string,
methods: Method[],
modeledMethods: Record<string, ModeledMethod>,
methodSignatures: string[],
) => void;
onStopGenerateFromLlmClick: (packageName: string) => void;
onGenerateFromSourceClick: () => void;