Add chat model open ai proxy url params (#3153)
* Add chat model open api proxy url param * Refactor add proxy url to chat model open ai * Update ChatOpenAI.ts --------- Co-authored-by: Henry Heng <henryheng@flowiseai.com>
This commit is contained in:
parent
474793486b
commit
40a1064a8f
|
|
@ -6,6 +6,7 @@ import { ICommonObject, IMultiModalOption, INode, INodeData, INodeOptionsValue,
|
||||||
import { getBaseClasses, getCredentialData, getCredentialParam } from '../../../src/utils'
|
import { getBaseClasses, getCredentialData, getCredentialParam } from '../../../src/utils'
|
||||||
import { ChatOpenAI } from './FlowiseChatOpenAI'
|
import { ChatOpenAI } from './FlowiseChatOpenAI'
|
||||||
import { getModels, MODEL_TYPE } from '../../../src/modelLoader'
|
import { getModels, MODEL_TYPE } from '../../../src/modelLoader'
|
||||||
|
import { HttpsProxyAgent } from 'https-proxy-agent'
|
||||||
|
|
||||||
class ChatOpenAI_ChatModels implements INode {
|
class ChatOpenAI_ChatModels implements INode {
|
||||||
label: string
|
label: string
|
||||||
|
|
@ -22,7 +23,7 @@ class ChatOpenAI_ChatModels implements INode {
|
||||||
constructor() {
|
constructor() {
|
||||||
this.label = 'ChatOpenAI'
|
this.label = 'ChatOpenAI'
|
||||||
this.name = 'chatOpenAI'
|
this.name = 'chatOpenAI'
|
||||||
this.version = 6.0
|
this.version = 7.0
|
||||||
this.type = 'ChatOpenAI'
|
this.type = 'ChatOpenAI'
|
||||||
this.icon = 'openai.svg'
|
this.icon = 'openai.svg'
|
||||||
this.category = 'Chat Models'
|
this.category = 'Chat Models'
|
||||||
|
|
@ -103,6 +104,13 @@ class ChatOpenAI_ChatModels implements INode {
|
||||||
optional: true,
|
optional: true,
|
||||||
additionalParams: true
|
additionalParams: true
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
label: 'Proxy Url',
|
||||||
|
name: 'proxyUrl',
|
||||||
|
type: 'string',
|
||||||
|
optional: true,
|
||||||
|
additionalParams: true
|
||||||
|
},
|
||||||
{
|
{
|
||||||
label: 'BaseOptions',
|
label: 'BaseOptions',
|
||||||
name: 'baseOptions',
|
name: 'baseOptions',
|
||||||
|
|
@ -162,6 +170,7 @@ class ChatOpenAI_ChatModels implements INode {
|
||||||
const timeout = nodeData.inputs?.timeout as string
|
const timeout = nodeData.inputs?.timeout as string
|
||||||
const streaming = nodeData.inputs?.streaming as boolean
|
const streaming = nodeData.inputs?.streaming as boolean
|
||||||
const basePath = nodeData.inputs?.basepath as string
|
const basePath = nodeData.inputs?.basepath as string
|
||||||
|
const proxyUrl = nodeData.inputs?.proxyUrl as string
|
||||||
const baseOptions = nodeData.inputs?.baseOptions
|
const baseOptions = nodeData.inputs?.baseOptions
|
||||||
|
|
||||||
const allowImageUploads = nodeData.inputs?.allowImageUploads as boolean
|
const allowImageUploads = nodeData.inputs?.allowImageUploads as boolean
|
||||||
|
|
@ -208,6 +217,13 @@ class ChatOpenAI_ChatModels implements INode {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (proxyUrl) {
|
||||||
|
obj.configuration = {
|
||||||
|
...obj?.configuration,
|
||||||
|
httpAgent: new HttpsProxyAgent(proxyUrl)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
const multiModalOption: IMultiModalOption = {
|
const multiModalOption: IMultiModalOption = {
|
||||||
image: {
|
image: {
|
||||||
allowImageUploads: allowImageUploads ?? false,
|
allowImageUploads: allowImageUploads ?? false,
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue