diff --git a/src/models/claude.js b/src/models/claude.js index c97ecb2..fb5c740 100644 --- a/src/models/claude.js +++ b/src/models/claude.js @@ -37,10 +37,30 @@ export class Claude { return res; } + async sendVisionRequest(turns, systemMessage, imageBuffer) { + const imageMessages = [...turns]; + imageMessages.push({ + role: "user", + content: [ + { + type: "text", + text: systemMessage + }, + { + type: "image", + source: { + type: "base64", + media_type: "image/jpeg", + data: imageBuffer.toString('base64') + } + } + ] + }); + + return this.sendRequest(imageMessages, systemMessage); + } + async embed(text) { throw new Error('Embeddings are not supported by Claude.'); } } - - -