mirror of
https://github.com/farcasclaudiu/Flowise.git
synced 2026-06-22 21:01:17 +03:00
4d79653741
* feat: Add image upload support to ChatOpenRouter node - Create FlowiseChatOpenRouter wrapper class implementing IVisionChatModal - Add allowImageUploads and imageResolution input fields - Support multimodal image inputs for OpenRouter models - Follows same pattern as ChatOpenAI implementation Resolves #5143 * lint fix --------- Co-authored-by: Henry <hzj94@hotmail.com>
30 lines
931 B
TypeScript
30 lines
931 B
TypeScript
import { ChatOpenAI as LangchainChatOpenAI, ChatOpenAIFields } from '@langchain/openai'
|
|
import { IMultiModalOption, IVisionChatModal } from '../../../src'
|
|
|
|
export class ChatOpenRouter extends LangchainChatOpenAI implements IVisionChatModal {
|
|
configuredModel: string
|
|
configuredMaxToken?: number
|
|
multiModalOption: IMultiModalOption
|
|
id: string
|
|
|
|
constructor(id: string, fields?: ChatOpenAIFields) {
|
|
super(fields)
|
|
this.id = id
|
|
this.configuredModel = fields?.modelName ?? ''
|
|
this.configuredMaxToken = fields?.maxTokens
|
|
}
|
|
|
|
revertToOriginalModel(): void {
|
|
this.model = this.configuredModel
|
|
this.maxTokens = this.configuredMaxToken
|
|
}
|
|
|
|
setMultiModalOption(multiModalOption: IMultiModalOption): void {
|
|
this.multiModalOption = multiModalOption
|
|
}
|
|
|
|
setVisionModel(): void {
|
|
// pass - OpenRouter models don't need model switching
|
|
}
|
|
}
|