mirror of
https://github.com/farcasclaudiu/Flowise.git
synced 2026-06-28 17:01:00 +03:00
Merge branch 'FlowiseAI:main' into main
This commit is contained in:
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "flowise",
|
"name": "flowise",
|
||||||
"version": "1.4.10",
|
"version": "1.4.11",
|
||||||
"private": true,
|
"private": true,
|
||||||
"homepage": "https://flowiseai.com",
|
"homepage": "https://flowiseai.com",
|
||||||
"workspaces": [
|
"workspaces": [
|
||||||
|
|||||||
+40
-3
@@ -1,9 +1,46 @@
|
|||||||
import { getBaseClasses, getCredentialData, getCredentialParam, ICommonObject, INode, INodeData, INodeParams } from '../../../src'
|
import { getBaseClasses, getCredentialData, getCredentialParam, ICommonObject, INode, INodeData, INodeParams } from '../../../src'
|
||||||
import { RedisCache as LangchainRedisCache } from 'langchain/cache/ioredis'
|
import { RedisCache as LangchainRedisCache } from 'langchain/cache/ioredis'
|
||||||
import { Redis } from 'ioredis'
|
import { Redis, RedisOptions } from 'ioredis'
|
||||||
|
import { isEqual } from 'lodash'
|
||||||
import { Generation, ChatGeneration, StoredGeneration, mapStoredMessageToChatMessage } from 'langchain/schema'
|
import { Generation, ChatGeneration, StoredGeneration, mapStoredMessageToChatMessage } from 'langchain/schema'
|
||||||
import hash from 'object-hash'
|
import hash from 'object-hash'
|
||||||
|
|
||||||
|
let redisClientSingleton: Redis
|
||||||
|
let redisClientOption: RedisOptions
|
||||||
|
let redisClientUrl: string
|
||||||
|
|
||||||
|
const getRedisClientbyOption = (option: RedisOptions) => {
|
||||||
|
if (!redisClientSingleton) {
|
||||||
|
// if client doesn't exists
|
||||||
|
redisClientSingleton = new Redis(option)
|
||||||
|
redisClientOption = option
|
||||||
|
return redisClientSingleton
|
||||||
|
} else if (redisClientSingleton && !isEqual(option, redisClientOption)) {
|
||||||
|
// if client exists but option changed
|
||||||
|
redisClientSingleton.quit()
|
||||||
|
redisClientSingleton = new Redis(option)
|
||||||
|
redisClientOption = option
|
||||||
|
return redisClientSingleton
|
||||||
|
}
|
||||||
|
return redisClientSingleton
|
||||||
|
}
|
||||||
|
|
||||||
|
const getRedisClientbyUrl = (url: string) => {
|
||||||
|
if (!redisClientSingleton) {
|
||||||
|
// if client doesn't exists
|
||||||
|
redisClientSingleton = new Redis(url)
|
||||||
|
redisClientUrl = url
|
||||||
|
return redisClientSingleton
|
||||||
|
} else if (redisClientSingleton && url !== redisClientUrl) {
|
||||||
|
// if client exists but option changed
|
||||||
|
redisClientSingleton.quit()
|
||||||
|
redisClientSingleton = new Redis(url)
|
||||||
|
redisClientUrl = url
|
||||||
|
return redisClientSingleton
|
||||||
|
}
|
||||||
|
return redisClientSingleton
|
||||||
|
}
|
||||||
|
|
||||||
class RedisCache implements INode {
|
class RedisCache implements INode {
|
||||||
label: string
|
label: string
|
||||||
name: string
|
name: string
|
||||||
@@ -60,7 +97,7 @@ class RedisCache implements INode {
|
|||||||
|
|
||||||
const tlsOptions = sslEnabled === true ? { tls: { rejectUnauthorized: false } } : {}
|
const tlsOptions = sslEnabled === true ? { tls: { rejectUnauthorized: false } } : {}
|
||||||
|
|
||||||
client = new Redis({
|
client = getRedisClientbyOption({
|
||||||
port: portStr ? parseInt(portStr) : 6379,
|
port: portStr ? parseInt(portStr) : 6379,
|
||||||
host,
|
host,
|
||||||
username,
|
username,
|
||||||
@@ -68,7 +105,7 @@ class RedisCache implements INode {
|
|||||||
...tlsOptions
|
...tlsOptions
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
client = new Redis(redisUrl)
|
client = getRedisClientbyUrl(redisUrl)
|
||||||
}
|
}
|
||||||
|
|
||||||
const redisClient = new LangchainRedisCache(client)
|
const redisClient = new LangchainRedisCache(client)
|
||||||
|
|||||||
@@ -1,9 +1,46 @@
|
|||||||
import { getBaseClasses, getCredentialData, getCredentialParam, ICommonObject, INode, INodeData, INodeParams } from '../../../src'
|
import { getBaseClasses, getCredentialData, getCredentialParam, ICommonObject, INode, INodeData, INodeParams } from '../../../src'
|
||||||
import { Redis } from 'ioredis'
|
import { Redis, RedisOptions } from 'ioredis'
|
||||||
|
import { isEqual } from 'lodash'
|
||||||
import { CacheBackedEmbeddings } from 'langchain/embeddings/cache_backed'
|
import { CacheBackedEmbeddings } from 'langchain/embeddings/cache_backed'
|
||||||
import { RedisByteStore } from 'langchain/storage/ioredis'
|
import { RedisByteStore } from 'langchain/storage/ioredis'
|
||||||
import { Embeddings } from 'langchain/embeddings/base'
|
import { Embeddings } from 'langchain/embeddings/base'
|
||||||
|
|
||||||
|
let redisClientSingleton: Redis
|
||||||
|
let redisClientOption: RedisOptions
|
||||||
|
let redisClientUrl: string
|
||||||
|
|
||||||
|
const getRedisClientbyOption = (option: RedisOptions) => {
|
||||||
|
if (!redisClientSingleton) {
|
||||||
|
// if client doesn't exists
|
||||||
|
redisClientSingleton = new Redis(option)
|
||||||
|
redisClientOption = option
|
||||||
|
return redisClientSingleton
|
||||||
|
} else if (redisClientSingleton && !isEqual(option, redisClientOption)) {
|
||||||
|
// if client exists but option changed
|
||||||
|
redisClientSingleton.quit()
|
||||||
|
redisClientSingleton = new Redis(option)
|
||||||
|
redisClientOption = option
|
||||||
|
return redisClientSingleton
|
||||||
|
}
|
||||||
|
return redisClientSingleton
|
||||||
|
}
|
||||||
|
|
||||||
|
const getRedisClientbyUrl = (url: string) => {
|
||||||
|
if (!redisClientSingleton) {
|
||||||
|
// if client doesn't exists
|
||||||
|
redisClientSingleton = new Redis(url)
|
||||||
|
redisClientUrl = url
|
||||||
|
return redisClientSingleton
|
||||||
|
} else if (redisClientSingleton && url !== redisClientUrl) {
|
||||||
|
// if client exists but option changed
|
||||||
|
redisClientSingleton.quit()
|
||||||
|
redisClientSingleton = new Redis(url)
|
||||||
|
redisClientUrl = url
|
||||||
|
return redisClientSingleton
|
||||||
|
}
|
||||||
|
return redisClientSingleton
|
||||||
|
}
|
||||||
|
|
||||||
class RedisEmbeddingsCache implements INode {
|
class RedisEmbeddingsCache implements INode {
|
||||||
label: string
|
label: string
|
||||||
name: string
|
name: string
|
||||||
@@ -75,7 +112,7 @@ class RedisEmbeddingsCache implements INode {
|
|||||||
|
|
||||||
const tlsOptions = sslEnabled === true ? { tls: { rejectUnauthorized: false } } : {}
|
const tlsOptions = sslEnabled === true ? { tls: { rejectUnauthorized: false } } : {}
|
||||||
|
|
||||||
client = new Redis({
|
client = getRedisClientbyOption({
|
||||||
port: portStr ? parseInt(portStr) : 6379,
|
port: portStr ? parseInt(portStr) : 6379,
|
||||||
host,
|
host,
|
||||||
username,
|
username,
|
||||||
@@ -83,7 +120,7 @@ class RedisEmbeddingsCache implements INode {
|
|||||||
...tlsOptions
|
...tlsOptions
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
client = new Redis(redisUrl)
|
client = getRedisClientbyUrl(redisUrl)
|
||||||
}
|
}
|
||||||
|
|
||||||
ttl ??= '3600'
|
ttl ??= '3600'
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ class ChatOpenAI_ChatModels implements INode {
|
|||||||
constructor() {
|
constructor() {
|
||||||
this.label = 'ChatOpenAI'
|
this.label = 'ChatOpenAI'
|
||||||
this.name = 'chatOpenAI'
|
this.name = 'chatOpenAI'
|
||||||
this.version = 2.0
|
this.version = 3.0
|
||||||
this.type = 'ChatOpenAI'
|
this.type = 'ChatOpenAI'
|
||||||
this.icon = 'openai.svg'
|
this.icon = 'openai.svg'
|
||||||
this.category = 'Chat Models'
|
this.category = 'Chat Models'
|
||||||
@@ -47,6 +47,14 @@ class ChatOpenAI_ChatModels implements INode {
|
|||||||
label: 'gpt-4',
|
label: 'gpt-4',
|
||||||
name: 'gpt-4'
|
name: 'gpt-4'
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
label: 'gpt-4-turbo-preview',
|
||||||
|
name: 'gpt-4-turbo-preview'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: 'gpt-4-0125-preview',
|
||||||
|
name: 'gpt-4-0125-preview'
|
||||||
|
},
|
||||||
{
|
{
|
||||||
label: 'gpt-4-1106-preview',
|
label: 'gpt-4-1106-preview',
|
||||||
name: 'gpt-4-1106-preview'
|
name: 'gpt-4-1106-preview'
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import { INode, INodeData, INodeParams } from '../../../src/Interface'
|
import { ICommonObject, INode, INodeData, INodeParams } from '../../../src/Interface'
|
||||||
import { TextSplitter } from 'langchain/text_splitter'
|
import { TextSplitter } from 'langchain/text_splitter'
|
||||||
import { CheerioWebBaseLoader, WebBaseLoaderParams } from 'langchain/document_loaders/web/cheerio'
|
import { CheerioWebBaseLoader, WebBaseLoaderParams } from 'langchain/document_loaders/web/cheerio'
|
||||||
import { test } from 'linkifyjs'
|
import { test } from 'linkifyjs'
|
||||||
@@ -63,6 +63,7 @@ class Cheerio_DocumentLoaders implements INode {
|
|||||||
name: 'limit',
|
name: 'limit',
|
||||||
type: 'number',
|
type: 'number',
|
||||||
optional: true,
|
optional: true,
|
||||||
|
default: '10',
|
||||||
additionalParams: true,
|
additionalParams: true,
|
||||||
description:
|
description:
|
||||||
'Only used when "Get Relative Links Method" is selected. Set 0 to retrieve all relative links, default limit is 10.',
|
'Only used when "Get Relative Links Method" is selected. Set 0 to retrieve all relative links, default limit is 10.',
|
||||||
@@ -86,11 +87,12 @@ class Cheerio_DocumentLoaders implements INode {
|
|||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
||||||
async init(nodeData: INodeData): Promise<any> {
|
async init(nodeData: INodeData, _: string, options: ICommonObject): Promise<any> {
|
||||||
const textSplitter = nodeData.inputs?.textSplitter as TextSplitter
|
const textSplitter = nodeData.inputs?.textSplitter as TextSplitter
|
||||||
const metadata = nodeData.inputs?.metadata
|
const metadata = nodeData.inputs?.metadata
|
||||||
const relativeLinksMethod = nodeData.inputs?.relativeLinksMethod as string
|
const relativeLinksMethod = nodeData.inputs?.relativeLinksMethod as string
|
||||||
let limit = nodeData.inputs?.limit as string
|
const selectedLinks = nodeData.inputs?.selectedLinks as string[]
|
||||||
|
let limit = parseInt(nodeData.inputs?.limit as string)
|
||||||
|
|
||||||
let url = nodeData.inputs?.url as string
|
let url = nodeData.inputs?.url as string
|
||||||
url = url.trim()
|
url = url.trim()
|
||||||
@@ -117,23 +119,33 @@ class Cheerio_DocumentLoaders implements INode {
|
|||||||
}
|
}
|
||||||
return docs
|
return docs
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
if (process.env.DEBUG === 'true') console.error(`error in CheerioWebBaseLoader: ${err.message}, on page: ${url}`)
|
if (process.env.DEBUG === 'true') options.logger.error(`error in CheerioWebBaseLoader: ${err.message}, on page: ${url}`)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
let docs = []
|
let docs = []
|
||||||
if (relativeLinksMethod) {
|
if (relativeLinksMethod) {
|
||||||
if (process.env.DEBUG === 'true') console.info(`Start ${relativeLinksMethod}`)
|
if (process.env.DEBUG === 'true') options.logger.info(`Start ${relativeLinksMethod}`)
|
||||||
if (!limit) limit = '10'
|
if (!limit) limit = 10
|
||||||
else if (parseInt(limit) < 0) throw new Error('Limit cannot be less than 0')
|
else if (limit < 0) throw new Error('Limit cannot be less than 0')
|
||||||
const pages: string[] =
|
const pages: string[] =
|
||||||
relativeLinksMethod === 'webCrawl' ? await webCrawl(url, parseInt(limit)) : await xmlScrape(url, parseInt(limit))
|
selectedLinks && selectedLinks.length > 0
|
||||||
if (process.env.DEBUG === 'true') console.info(`pages: ${JSON.stringify(pages)}, length: ${pages.length}`)
|
? selectedLinks.slice(0, limit)
|
||||||
|
: relativeLinksMethod === 'webCrawl'
|
||||||
|
? await webCrawl(url, limit)
|
||||||
|
: await xmlScrape(url, limit)
|
||||||
|
if (process.env.DEBUG === 'true') options.logger.info(`pages: ${JSON.stringify(pages)}, length: ${pages.length}`)
|
||||||
if (!pages || pages.length === 0) throw new Error('No relative links found')
|
if (!pages || pages.length === 0) throw new Error('No relative links found')
|
||||||
for (const page of pages) {
|
for (const page of pages) {
|
||||||
docs.push(...(await cheerioLoader(page)))
|
docs.push(...(await cheerioLoader(page)))
|
||||||
}
|
}
|
||||||
if (process.env.DEBUG === 'true') console.info(`Finish ${relativeLinksMethod}`)
|
if (process.env.DEBUG === 'true') options.logger.info(`Finish ${relativeLinksMethod}`)
|
||||||
|
} else if (selectedLinks && selectedLinks.length > 0) {
|
||||||
|
if (process.env.DEBUG === 'true')
|
||||||
|
options.logger.info(`pages: ${JSON.stringify(selectedLinks)}, length: ${selectedLinks.length}`)
|
||||||
|
for (const page of selectedLinks) {
|
||||||
|
docs.push(...(await cheerioLoader(page)))
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
docs = await cheerioLoader(url)
|
docs = await cheerioLoader(url)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import { INode, INodeData, INodeParams } from '../../../src/Interface'
|
import { ICommonObject, INode, INodeData, INodeParams } from '../../../src/Interface'
|
||||||
import { TextSplitter } from 'langchain/text_splitter'
|
import { TextSplitter } from 'langchain/text_splitter'
|
||||||
import { Browser, Page, PlaywrightWebBaseLoader, PlaywrightWebBaseLoaderOptions } from 'langchain/document_loaders/web/playwright'
|
import { Browser, Page, PlaywrightWebBaseLoader, PlaywrightWebBaseLoaderOptions } from 'langchain/document_loaders/web/playwright'
|
||||||
import { test } from 'linkifyjs'
|
import { test } from 'linkifyjs'
|
||||||
@@ -61,6 +61,7 @@ class Playwright_DocumentLoaders implements INode {
|
|||||||
name: 'limit',
|
name: 'limit',
|
||||||
type: 'number',
|
type: 'number',
|
||||||
optional: true,
|
optional: true,
|
||||||
|
default: '10',
|
||||||
additionalParams: true,
|
additionalParams: true,
|
||||||
description:
|
description:
|
||||||
'Only used when "Get Relative Links Method" is selected. Set 0 to retrieve all relative links, default limit is 10.',
|
'Only used when "Get Relative Links Method" is selected. Set 0 to retrieve all relative links, default limit is 10.',
|
||||||
@@ -114,11 +115,12 @@ class Playwright_DocumentLoaders implements INode {
|
|||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
||||||
async init(nodeData: INodeData): Promise<any> {
|
async init(nodeData: INodeData, _: string, options: ICommonObject): Promise<any> {
|
||||||
const textSplitter = nodeData.inputs?.textSplitter as TextSplitter
|
const textSplitter = nodeData.inputs?.textSplitter as TextSplitter
|
||||||
const metadata = nodeData.inputs?.metadata
|
const metadata = nodeData.inputs?.metadata
|
||||||
const relativeLinksMethod = nodeData.inputs?.relativeLinksMethod as string
|
const relativeLinksMethod = nodeData.inputs?.relativeLinksMethod as string
|
||||||
let limit = nodeData.inputs?.limit as string
|
const selectedLinks = nodeData.inputs?.selectedLinks as string[]
|
||||||
|
let limit = parseInt(nodeData.inputs?.limit as string)
|
||||||
let waitUntilGoToOption = nodeData.inputs?.waitUntilGoToOption as 'load' | 'domcontentloaded' | 'networkidle' | 'commit' | undefined
|
let waitUntilGoToOption = nodeData.inputs?.waitUntilGoToOption as 'load' | 'domcontentloaded' | 'networkidle' | 'commit' | undefined
|
||||||
let waitForSelector = nodeData.inputs?.waitForSelector as string
|
let waitForSelector = nodeData.inputs?.waitForSelector as string
|
||||||
|
|
||||||
@@ -158,23 +160,33 @@ class Playwright_DocumentLoaders implements INode {
|
|||||||
}
|
}
|
||||||
return docs
|
return docs
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
if (process.env.DEBUG === 'true') console.error(`error in PlaywrightWebBaseLoader: ${err.message}, on page: ${url}`)
|
if (process.env.DEBUG === 'true') options.logger.error(`error in PlaywrightWebBaseLoader: ${err.message}, on page: ${url}`)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
let docs = []
|
let docs = []
|
||||||
if (relativeLinksMethod) {
|
if (relativeLinksMethod) {
|
||||||
if (process.env.DEBUG === 'true') console.info(`Start ${relativeLinksMethod}`)
|
if (process.env.DEBUG === 'true') options.logger.info(`Start ${relativeLinksMethod}`)
|
||||||
if (!limit) limit = '10'
|
if (!limit) limit = 10
|
||||||
else if (parseInt(limit) < 0) throw new Error('Limit cannot be less than 0')
|
else if (limit < 0) throw new Error('Limit cannot be less than 0')
|
||||||
const pages: string[] =
|
const pages: string[] =
|
||||||
relativeLinksMethod === 'webCrawl' ? await webCrawl(url, parseInt(limit)) : await xmlScrape(url, parseInt(limit))
|
selectedLinks && selectedLinks.length > 0
|
||||||
if (process.env.DEBUG === 'true') console.info(`pages: ${JSON.stringify(pages)}, length: ${pages.length}`)
|
? selectedLinks.slice(0, limit)
|
||||||
|
: relativeLinksMethod === 'webCrawl'
|
||||||
|
? await webCrawl(url, limit)
|
||||||
|
: await xmlScrape(url, limit)
|
||||||
|
if (process.env.DEBUG === 'true') options.logger.info(`pages: ${JSON.stringify(pages)}, length: ${pages.length}`)
|
||||||
if (!pages || pages.length === 0) throw new Error('No relative links found')
|
if (!pages || pages.length === 0) throw new Error('No relative links found')
|
||||||
for (const page of pages) {
|
for (const page of pages) {
|
||||||
docs.push(...(await playwrightLoader(page)))
|
docs.push(...(await playwrightLoader(page)))
|
||||||
}
|
}
|
||||||
if (process.env.DEBUG === 'true') console.info(`Finish ${relativeLinksMethod}`)
|
if (process.env.DEBUG === 'true') options.logger.info(`Finish ${relativeLinksMethod}`)
|
||||||
|
} else if (selectedLinks && selectedLinks.length > 0) {
|
||||||
|
if (process.env.DEBUG === 'true')
|
||||||
|
options.logger.info(`pages: ${JSON.stringify(selectedLinks)}, length: ${selectedLinks.length}`)
|
||||||
|
for (const page of selectedLinks) {
|
||||||
|
docs.push(...(await playwrightLoader(page)))
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
docs = await playwrightLoader(url)
|
docs = await playwrightLoader(url)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import { INode, INodeData, INodeParams } from '../../../src/Interface'
|
import { ICommonObject, INode, INodeData, INodeParams } from '../../../src/Interface'
|
||||||
import { TextSplitter } from 'langchain/text_splitter'
|
import { TextSplitter } from 'langchain/text_splitter'
|
||||||
import { Browser, Page, PuppeteerWebBaseLoader, PuppeteerWebBaseLoaderOptions } from 'langchain/document_loaders/web/puppeteer'
|
import { Browser, Page, PuppeteerWebBaseLoader, PuppeteerWebBaseLoaderOptions } from 'langchain/document_loaders/web/puppeteer'
|
||||||
import { test } from 'linkifyjs'
|
import { test } from 'linkifyjs'
|
||||||
@@ -62,6 +62,7 @@ class Puppeteer_DocumentLoaders implements INode {
|
|||||||
name: 'limit',
|
name: 'limit',
|
||||||
type: 'number',
|
type: 'number',
|
||||||
optional: true,
|
optional: true,
|
||||||
|
default: '10',
|
||||||
additionalParams: true,
|
additionalParams: true,
|
||||||
description:
|
description:
|
||||||
'Only used when "Get Relative Links Method" is selected. Set 0 to retrieve all relative links, default limit is 10.',
|
'Only used when "Get Relative Links Method" is selected. Set 0 to retrieve all relative links, default limit is 10.',
|
||||||
@@ -115,11 +116,12 @@ class Puppeteer_DocumentLoaders implements INode {
|
|||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
||||||
async init(nodeData: INodeData): Promise<any> {
|
async init(nodeData: INodeData, _: string, options: ICommonObject): Promise<any> {
|
||||||
const textSplitter = nodeData.inputs?.textSplitter as TextSplitter
|
const textSplitter = nodeData.inputs?.textSplitter as TextSplitter
|
||||||
const metadata = nodeData.inputs?.metadata
|
const metadata = nodeData.inputs?.metadata
|
||||||
const relativeLinksMethod = nodeData.inputs?.relativeLinksMethod as string
|
const relativeLinksMethod = nodeData.inputs?.relativeLinksMethod as string
|
||||||
let limit = nodeData.inputs?.limit as string
|
const selectedLinks = nodeData.inputs?.selectedLinks as string[]
|
||||||
|
let limit = parseInt(nodeData.inputs?.limit as string)
|
||||||
let waitUntilGoToOption = nodeData.inputs?.waitUntilGoToOption as PuppeteerLifeCycleEvent
|
let waitUntilGoToOption = nodeData.inputs?.waitUntilGoToOption as PuppeteerLifeCycleEvent
|
||||||
let waitForSelector = nodeData.inputs?.waitForSelector as string
|
let waitForSelector = nodeData.inputs?.waitForSelector as string
|
||||||
|
|
||||||
@@ -159,23 +161,33 @@ class Puppeteer_DocumentLoaders implements INode {
|
|||||||
}
|
}
|
||||||
return docs
|
return docs
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
if (process.env.DEBUG === 'true') console.error(`error in PuppeteerWebBaseLoader: ${err.message}, on page: ${url}`)
|
if (process.env.DEBUG === 'true') options.logger.error(`error in PuppeteerWebBaseLoader: ${err.message}, on page: ${url}`)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
let docs = []
|
let docs = []
|
||||||
if (relativeLinksMethod) {
|
if (relativeLinksMethod) {
|
||||||
if (process.env.DEBUG === 'true') console.info(`Start ${relativeLinksMethod}`)
|
if (process.env.DEBUG === 'true') options.logger.info(`Start ${relativeLinksMethod}`)
|
||||||
if (!limit) limit = '10'
|
if (!limit) limit = 10
|
||||||
else if (parseInt(limit) < 0) throw new Error('Limit cannot be less than 0')
|
else if (limit < 0) throw new Error('Limit cannot be less than 0')
|
||||||
const pages: string[] =
|
const pages: string[] =
|
||||||
relativeLinksMethod === 'webCrawl' ? await webCrawl(url, parseInt(limit)) : await xmlScrape(url, parseInt(limit))
|
selectedLinks && selectedLinks.length > 0
|
||||||
if (process.env.DEBUG === 'true') console.info(`pages: ${JSON.stringify(pages)}, length: ${pages.length}`)
|
? selectedLinks.slice(0, limit)
|
||||||
|
: relativeLinksMethod === 'webCrawl'
|
||||||
|
? await webCrawl(url, limit)
|
||||||
|
: await xmlScrape(url, limit)
|
||||||
|
if (process.env.DEBUG === 'true') options.logger.info(`pages: ${JSON.stringify(pages)}, length: ${pages.length}`)
|
||||||
if (!pages || pages.length === 0) throw new Error('No relative links found')
|
if (!pages || pages.length === 0) throw new Error('No relative links found')
|
||||||
for (const page of pages) {
|
for (const page of pages) {
|
||||||
docs.push(...(await puppeteerLoader(page)))
|
docs.push(...(await puppeteerLoader(page)))
|
||||||
}
|
}
|
||||||
if (process.env.DEBUG === 'true') console.info(`Finish ${relativeLinksMethod}`)
|
if (process.env.DEBUG === 'true') options.logger.info(`Finish ${relativeLinksMethod}`)
|
||||||
|
} else if (selectedLinks && selectedLinks.length > 0) {
|
||||||
|
if (process.env.DEBUG === 'true')
|
||||||
|
options.logger.info(`pages: ${JSON.stringify(selectedLinks)}, length: ${selectedLinks.length}`)
|
||||||
|
for (const page of selectedLinks) {
|
||||||
|
docs.push(...(await puppeteerLoader(page)))
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
docs = await puppeteerLoader(url)
|
docs = await puppeteerLoader(url)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ class OpenAIEmbedding_Embeddings implements INode {
|
|||||||
constructor() {
|
constructor() {
|
||||||
this.label = 'OpenAI Embeddings'
|
this.label = 'OpenAI Embeddings'
|
||||||
this.name = 'openAIEmbeddings'
|
this.name = 'openAIEmbeddings'
|
||||||
this.version = 1.0
|
this.version = 2.0
|
||||||
this.type = 'OpenAIEmbeddings'
|
this.type = 'OpenAIEmbeddings'
|
||||||
this.icon = 'openai.svg'
|
this.icon = 'openai.svg'
|
||||||
this.category = 'Embeddings'
|
this.category = 'Embeddings'
|
||||||
@@ -30,6 +30,27 @@ class OpenAIEmbedding_Embeddings implements INode {
|
|||||||
credentialNames: ['openAIApi']
|
credentialNames: ['openAIApi']
|
||||||
}
|
}
|
||||||
this.inputs = [
|
this.inputs = [
|
||||||
|
{
|
||||||
|
label: 'Model Name',
|
||||||
|
name: 'modelName',
|
||||||
|
type: 'options',
|
||||||
|
options: [
|
||||||
|
{
|
||||||
|
label: 'text-embedding-3-large',
|
||||||
|
name: 'text-embedding-3-large'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: 'text-embedding-3-small',
|
||||||
|
name: 'text-embedding-3-small'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: 'text-embedding-ada-002',
|
||||||
|
name: 'text-embedding-ada-002'
|
||||||
|
}
|
||||||
|
],
|
||||||
|
default: 'text-embedding-ada-002',
|
||||||
|
optional: true
|
||||||
|
},
|
||||||
{
|
{
|
||||||
label: 'Strip New Lines',
|
label: 'Strip New Lines',
|
||||||
name: 'stripNewLines',
|
name: 'stripNewLines',
|
||||||
@@ -66,12 +87,14 @@ class OpenAIEmbedding_Embeddings implements INode {
|
|||||||
const batchSize = nodeData.inputs?.batchSize as string
|
const batchSize = nodeData.inputs?.batchSize as string
|
||||||
const timeout = nodeData.inputs?.timeout as string
|
const timeout = nodeData.inputs?.timeout as string
|
||||||
const basePath = nodeData.inputs?.basepath as string
|
const basePath = nodeData.inputs?.basepath as string
|
||||||
|
const modelName = nodeData.inputs?.modelName as string
|
||||||
|
|
||||||
const credentialData = await getCredentialData(nodeData.credential ?? '', options)
|
const credentialData = await getCredentialData(nodeData.credential ?? '', options)
|
||||||
const openAIApiKey = getCredentialParam('openAIApiKey', credentialData, nodeData)
|
const openAIApiKey = getCredentialParam('openAIApiKey', credentialData, nodeData)
|
||||||
|
|
||||||
const obj: Partial<OpenAIEmbeddingsParams> & { openAIApiKey?: string } = {
|
const obj: Partial<OpenAIEmbeddingsParams> & { openAIApiKey?: string } = {
|
||||||
openAIApiKey
|
openAIApiKey,
|
||||||
|
modelName
|
||||||
}
|
}
|
||||||
|
|
||||||
if (stripNewLines) obj.stripNewLines = stripNewLines
|
if (stripNewLines) obj.stripNewLines = stripNewLines
|
||||||
|
|||||||
@@ -5,6 +5,24 @@ import { mapStoredMessageToChatMessage, AIMessage, HumanMessage, BaseMessage } f
|
|||||||
import { convertBaseMessagetoIMessage, getBaseClasses, getCredentialData, getCredentialParam } from '../../../src/utils'
|
import { convertBaseMessagetoIMessage, getBaseClasses, getCredentialData, getCredentialParam } from '../../../src/utils'
|
||||||
import { FlowiseMemory, ICommonObject, IMessage, INode, INodeData, INodeParams, MemoryMethods, MessageType } from '../../../src/Interface'
|
import { FlowiseMemory, ICommonObject, IMessage, INode, INodeData, INodeParams, MemoryMethods, MessageType } from '../../../src/Interface'
|
||||||
|
|
||||||
|
let mongoClientSingleton: MongoClient
|
||||||
|
let mongoUrl: string
|
||||||
|
|
||||||
|
const getMongoClient = async (newMongoUrl: string) => {
|
||||||
|
if (!mongoClientSingleton) {
|
||||||
|
// if client doesn't exists
|
||||||
|
mongoClientSingleton = new MongoClient(newMongoUrl)
|
||||||
|
mongoUrl = newMongoUrl
|
||||||
|
return mongoClientSingleton
|
||||||
|
} else if (mongoClientSingleton && newMongoUrl !== mongoUrl) {
|
||||||
|
// if client exists but url changed
|
||||||
|
mongoClientSingleton.close()
|
||||||
|
mongoClientSingleton = new MongoClient(newMongoUrl)
|
||||||
|
mongoUrl = newMongoUrl
|
||||||
|
return mongoClientSingleton
|
||||||
|
}
|
||||||
|
return mongoClientSingleton
|
||||||
|
}
|
||||||
class MongoDB_Memory implements INode {
|
class MongoDB_Memory implements INode {
|
||||||
label: string
|
label: string
|
||||||
name: string
|
name: string
|
||||||
@@ -79,9 +97,7 @@ const initializeMongoDB = async (nodeData: INodeData, options: ICommonObject): P
|
|||||||
const credentialData = await getCredentialData(nodeData.credential ?? '', options)
|
const credentialData = await getCredentialData(nodeData.credential ?? '', options)
|
||||||
const mongoDBConnectUrl = getCredentialParam('mongoDBConnectUrl', credentialData, nodeData)
|
const mongoDBConnectUrl = getCredentialParam('mongoDBConnectUrl', credentialData, nodeData)
|
||||||
|
|
||||||
const client = new MongoClient(mongoDBConnectUrl)
|
const client = await getMongoClient(mongoDBConnectUrl)
|
||||||
await client.connect()
|
|
||||||
|
|
||||||
const collection = client.db(databaseName).collection(collectionName)
|
const collection = client.db(databaseName).collection(collectionName)
|
||||||
|
|
||||||
const mongoDBChatMessageHistory = new MongoDBChatMessageHistory({
|
const mongoDBChatMessageHistory = new MongoDBChatMessageHistory({
|
||||||
|
|||||||
@@ -1,10 +1,47 @@
|
|||||||
import { Redis } from 'ioredis'
|
import { Redis, RedisOptions } from 'ioredis'
|
||||||
|
import { isEqual } from 'lodash'
|
||||||
import { BufferMemory, BufferMemoryInput } from 'langchain/memory'
|
import { BufferMemory, BufferMemoryInput } from 'langchain/memory'
|
||||||
import { RedisChatMessageHistory, RedisChatMessageHistoryInput } from 'langchain/stores/message/ioredis'
|
import { RedisChatMessageHistory, RedisChatMessageHistoryInput } from 'langchain/stores/message/ioredis'
|
||||||
import { mapStoredMessageToChatMessage, BaseMessage, AIMessage, HumanMessage } from 'langchain/schema'
|
import { mapStoredMessageToChatMessage, BaseMessage, AIMessage, HumanMessage } from 'langchain/schema'
|
||||||
import { INode, INodeData, INodeParams, ICommonObject, MessageType, IMessage, MemoryMethods, FlowiseMemory } from '../../../src/Interface'
|
import { INode, INodeData, INodeParams, ICommonObject, MessageType, IMessage, MemoryMethods, FlowiseMemory } from '../../../src/Interface'
|
||||||
import { convertBaseMessagetoIMessage, getBaseClasses, getCredentialData, getCredentialParam } from '../../../src/utils'
|
import { convertBaseMessagetoIMessage, getBaseClasses, getCredentialData, getCredentialParam } from '../../../src/utils'
|
||||||
|
|
||||||
|
let redisClientSingleton: Redis
|
||||||
|
let redisClientOption: RedisOptions
|
||||||
|
let redisClientUrl: string
|
||||||
|
|
||||||
|
const getRedisClientbyOption = (option: RedisOptions) => {
|
||||||
|
if (!redisClientSingleton) {
|
||||||
|
// if client doesn't exists
|
||||||
|
redisClientSingleton = new Redis(option)
|
||||||
|
redisClientOption = option
|
||||||
|
return redisClientSingleton
|
||||||
|
} else if (redisClientSingleton && !isEqual(option, redisClientOption)) {
|
||||||
|
// if client exists but option changed
|
||||||
|
redisClientSingleton.quit()
|
||||||
|
redisClientSingleton = new Redis(option)
|
||||||
|
redisClientOption = option
|
||||||
|
return redisClientSingleton
|
||||||
|
}
|
||||||
|
return redisClientSingleton
|
||||||
|
}
|
||||||
|
|
||||||
|
const getRedisClientbyUrl = (url: string) => {
|
||||||
|
if (!redisClientSingleton) {
|
||||||
|
// if client doesn't exists
|
||||||
|
redisClientSingleton = new Redis(url)
|
||||||
|
redisClientUrl = url
|
||||||
|
return redisClientSingleton
|
||||||
|
} else if (redisClientSingleton && url !== redisClientUrl) {
|
||||||
|
// if client exists but option changed
|
||||||
|
redisClientSingleton.quit()
|
||||||
|
redisClientSingleton = new Redis(url)
|
||||||
|
redisClientUrl = url
|
||||||
|
return redisClientSingleton
|
||||||
|
}
|
||||||
|
return redisClientSingleton
|
||||||
|
}
|
||||||
|
|
||||||
class RedisBackedChatMemory_Memory implements INode {
|
class RedisBackedChatMemory_Memory implements INode {
|
||||||
label: string
|
label: string
|
||||||
name: string
|
name: string
|
||||||
@@ -95,7 +132,7 @@ const initalizeRedis = async (nodeData: INodeData, options: ICommonObject): Prom
|
|||||||
|
|
||||||
const tlsOptions = sslEnabled === true ? { tls: { rejectUnauthorized: false } } : {}
|
const tlsOptions = sslEnabled === true ? { tls: { rejectUnauthorized: false } } : {}
|
||||||
|
|
||||||
client = new Redis({
|
client = getRedisClientbyOption({
|
||||||
port: portStr ? parseInt(portStr) : 6379,
|
port: portStr ? parseInt(portStr) : 6379,
|
||||||
host,
|
host,
|
||||||
username,
|
username,
|
||||||
@@ -103,7 +140,7 @@ const initalizeRedis = async (nodeData: INodeData, options: ICommonObject): Prom
|
|||||||
...tlsOptions
|
...tlsOptions
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
client = new Redis(redisUrl)
|
client = getRedisClientbyUrl(redisUrl)
|
||||||
}
|
}
|
||||||
|
|
||||||
let obj: RedisChatMessageHistoryInput = {
|
let obj: RedisChatMessageHistoryInput = {
|
||||||
@@ -120,24 +157,6 @@ const initalizeRedis = async (nodeData: INodeData, options: ICommonObject): Prom
|
|||||||
|
|
||||||
const redisChatMessageHistory = new RedisChatMessageHistory(obj)
|
const redisChatMessageHistory = new RedisChatMessageHistory(obj)
|
||||||
|
|
||||||
/*redisChatMessageHistory.getMessages = async (): Promise<BaseMessage[]> => {
|
|
||||||
const rawStoredMessages = await client.lrange((redisChatMessageHistory as any).sessionId, windowSize ? -windowSize : 0, -1)
|
|
||||||
const orderedMessages = rawStoredMessages.reverse().map((message) => JSON.parse(message))
|
|
||||||
return orderedMessages.map(mapStoredMessageToChatMessage)
|
|
||||||
}
|
|
||||||
|
|
||||||
redisChatMessageHistory.addMessage = async (message: BaseMessage): Promise<void> => {
|
|
||||||
const messageToAdd = [message].map((msg) => msg.toDict())
|
|
||||||
await client.lpush((redisChatMessageHistory as any).sessionId, JSON.stringify(messageToAdd[0]))
|
|
||||||
if (sessionTTL) {
|
|
||||||
await client.expire((redisChatMessageHistory as any).sessionId, sessionTTL)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
redisChatMessageHistory.clear = async (): Promise<void> => {
|
|
||||||
await client.del((redisChatMessageHistory as any).sessionId)
|
|
||||||
}*/
|
|
||||||
|
|
||||||
const memory = new BufferMemoryExtended({
|
const memory = new BufferMemoryExtended({
|
||||||
memoryKey: memoryKey ?? 'chat_history',
|
memoryKey: memoryKey ?? 'chat_history',
|
||||||
chatHistory: redisChatMessageHistory,
|
chatHistory: redisChatMessageHistory,
|
||||||
|
|||||||
@@ -52,11 +52,19 @@ class CustomFunction_Utilities implements INode {
|
|||||||
label: 'Output',
|
label: 'Output',
|
||||||
name: 'output',
|
name: 'output',
|
||||||
baseClasses: ['string', 'number', 'boolean', 'json', 'array']
|
baseClasses: ['string', 'number', 'boolean', 'json', 'array']
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: 'Ending Node',
|
||||||
|
name: 'EndingNode',
|
||||||
|
baseClasses: [this.type]
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
||||||
async init(nodeData: INodeData, input: string, options: ICommonObject): Promise<any> {
|
async init(nodeData: INodeData, input: string, options: ICommonObject): Promise<any> {
|
||||||
|
const isEndingNode = nodeData?.outputs?.output === 'EndingNode'
|
||||||
|
if (isEndingNode && !options.isRun) return // prevent running both init and run twice
|
||||||
|
|
||||||
const javascriptFunction = nodeData.inputs?.javascriptFunction as string
|
const javascriptFunction = nodeData.inputs?.javascriptFunction as string
|
||||||
const functionInputVariablesRaw = nodeData.inputs?.functionInputVariables
|
const functionInputVariablesRaw = nodeData.inputs?.functionInputVariables
|
||||||
const appDataSource = options.appDataSource as DataSource
|
const appDataSource = options.appDataSource as DataSource
|
||||||
@@ -123,7 +131,8 @@ class CustomFunction_Utilities implements INode {
|
|||||||
const vm = new NodeVM(nodeVMOptions)
|
const vm = new NodeVM(nodeVMOptions)
|
||||||
try {
|
try {
|
||||||
const response = await vm.run(`module.exports = async function() {${javascriptFunction}}()`, __dirname)
|
const response = await vm.run(`module.exports = async function() {${javascriptFunction}}()`, __dirname)
|
||||||
if (typeof response === 'string') {
|
|
||||||
|
if (typeof response === 'string' && !isEndingNode) {
|
||||||
return handleEscapeCharacters(response, false)
|
return handleEscapeCharacters(response, false)
|
||||||
}
|
}
|
||||||
return response
|
return response
|
||||||
@@ -131,6 +140,10 @@ class CustomFunction_Utilities implements INode {
|
|||||||
throw new Error(e)
|
throw new Error(e)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async run(nodeData: INodeData, input: string, options: ICommonObject): Promise<string> {
|
||||||
|
return await this.init(nodeData, input, { ...options, isRun: true })
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
module.exports = { nodeClass: CustomFunction_Utilities }
|
module.exports = { nodeClass: CustomFunction_Utilities }
|
||||||
|
|||||||
@@ -105,7 +105,6 @@ class Pinecone_VectorStores implements INode {
|
|||||||
|
|
||||||
const credentialData = await getCredentialData(nodeData.credential ?? '', options)
|
const credentialData = await getCredentialData(nodeData.credential ?? '', options)
|
||||||
const pineconeApiKey = getCredentialParam('pineconeApiKey', credentialData, nodeData)
|
const pineconeApiKey = getCredentialParam('pineconeApiKey', credentialData, nodeData)
|
||||||
const pineconeEnv = getCredentialParam('pineconeEnv', credentialData, nodeData)
|
|
||||||
|
|
||||||
const client = new Pinecone({
|
const client = new Pinecone({
|
||||||
apiKey: pineconeApiKey
|
apiKey: pineconeApiKey
|
||||||
@@ -144,7 +143,6 @@ class Pinecone_VectorStores implements INode {
|
|||||||
|
|
||||||
const credentialData = await getCredentialData(nodeData.credential ?? '', options)
|
const credentialData = await getCredentialData(nodeData.credential ?? '', options)
|
||||||
const pineconeApiKey = getCredentialParam('pineconeApiKey', credentialData, nodeData)
|
const pineconeApiKey = getCredentialParam('pineconeApiKey', credentialData, nodeData)
|
||||||
const pineconeEnv = getCredentialParam('pineconeEnv', credentialData, nodeData)
|
|
||||||
|
|
||||||
const client = new Pinecone({
|
const client = new Pinecone({
|
||||||
apiKey: pineconeApiKey
|
apiKey: pineconeApiKey
|
||||||
|
|||||||
@@ -194,7 +194,7 @@ class Qdrant_VectorStores implements INode {
|
|||||||
const qdrantVectorDimension = nodeData.inputs?.qdrantVectorDimension
|
const qdrantVectorDimension = nodeData.inputs?.qdrantVectorDimension
|
||||||
const output = nodeData.outputs?.output as string
|
const output = nodeData.outputs?.output as string
|
||||||
const topK = nodeData.inputs?.topK as string
|
const topK = nodeData.inputs?.topK as string
|
||||||
let queryFilter = nodeData.inputs?.queryFilter
|
let queryFilter = nodeData.inputs?.qdrantFilter
|
||||||
|
|
||||||
const k = topK ? parseFloat(topK) : 4
|
const k = topK ? parseFloat(topK) : 4
|
||||||
|
|
||||||
|
|||||||
@@ -135,7 +135,7 @@ class Qdrant_Existing_VectorStores implements INode {
|
|||||||
const qdrantVectorDimension = nodeData.inputs?.qdrantVectorDimension
|
const qdrantVectorDimension = nodeData.inputs?.qdrantVectorDimension
|
||||||
const output = nodeData.outputs?.output as string
|
const output = nodeData.outputs?.output as string
|
||||||
const topK = nodeData.inputs?.topK as string
|
const topK = nodeData.inputs?.topK as string
|
||||||
let queryFilter = nodeData.inputs?.queryFilter
|
let queryFilter = nodeData.inputs?.qdrantFilter
|
||||||
|
|
||||||
const k = topK ? parseFloat(topK) : 4
|
const k = topK ? parseFloat(topK) : 4
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import { flatten } from 'lodash'
|
import { flatten, isEqual } from 'lodash'
|
||||||
import { createClient, SearchOptions } from 'redis'
|
import { createClient, SearchOptions, RedisClientOptions } from 'redis'
|
||||||
import { Embeddings } from 'langchain/embeddings/base'
|
import { Embeddings } from 'langchain/embeddings/base'
|
||||||
import { RedisVectorStore, RedisVectorStoreConfig } from 'langchain/vectorstores/redis'
|
import { RedisVectorStore, RedisVectorStoreConfig } from 'langchain/vectorstores/redis'
|
||||||
import { Document } from 'langchain/document'
|
import { Document } from 'langchain/document'
|
||||||
@@ -7,6 +7,27 @@ import { ICommonObject, INode, INodeData, INodeOutputsValue, INodeParams } from
|
|||||||
import { getBaseClasses, getCredentialData, getCredentialParam } from '../../../src/utils'
|
import { getBaseClasses, getCredentialData, getCredentialParam } from '../../../src/utils'
|
||||||
import { escapeAllStrings, escapeSpecialChars, unEscapeSpecialChars } from './utils'
|
import { escapeAllStrings, escapeSpecialChars, unEscapeSpecialChars } from './utils'
|
||||||
|
|
||||||
|
let redisClientSingleton: ReturnType<typeof createClient>
|
||||||
|
let redisClientOption: RedisClientOptions
|
||||||
|
|
||||||
|
const getRedisClient = async (option: RedisClientOptions) => {
|
||||||
|
if (!redisClientSingleton) {
|
||||||
|
// if client doesn't exists
|
||||||
|
redisClientSingleton = createClient(option)
|
||||||
|
await redisClientSingleton.connect()
|
||||||
|
redisClientOption = option
|
||||||
|
return redisClientSingleton
|
||||||
|
} else if (redisClientSingleton && !isEqual(option, redisClientOption)) {
|
||||||
|
// if client exists but option changed
|
||||||
|
redisClientSingleton.quit()
|
||||||
|
redisClientSingleton = createClient(option)
|
||||||
|
await redisClientSingleton.connect()
|
||||||
|
redisClientOption = option
|
||||||
|
return redisClientSingleton
|
||||||
|
}
|
||||||
|
return redisClientSingleton
|
||||||
|
}
|
||||||
|
|
||||||
class Redis_VectorStores implements INode {
|
class Redis_VectorStores implements INode {
|
||||||
label: string
|
label: string
|
||||||
name: string
|
name: string
|
||||||
@@ -149,8 +170,7 @@ class Redis_VectorStores implements INode {
|
|||||||
}
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
const redisClient = createClient({ url: redisUrl })
|
const redisClient = await getRedisClient({ url: redisUrl })
|
||||||
await redisClient.connect()
|
|
||||||
|
|
||||||
const storeConfig: RedisVectorStoreConfig = {
|
const storeConfig: RedisVectorStoreConfig = {
|
||||||
redisClient: redisClient,
|
redisClient: redisClient,
|
||||||
@@ -210,8 +230,7 @@ class Redis_VectorStores implements INode {
|
|||||||
redisUrl = 'redis://' + username + ':' + password + '@' + host + ':' + portStr
|
redisUrl = 'redis://' + username + ':' + password + '@' + host + ':' + portStr
|
||||||
}
|
}
|
||||||
|
|
||||||
const redisClient = createClient({ url: redisUrl })
|
const redisClient = await getRedisClient({ url: redisUrl })
|
||||||
await redisClient.connect()
|
|
||||||
|
|
||||||
const storeConfig: RedisVectorStoreConfig = {
|
const storeConfig: RedisVectorStoreConfig = {
|
||||||
redisClient: redisClient,
|
redisClient: redisClient,
|
||||||
|
|||||||
@@ -7,13 +7,34 @@ import {
|
|||||||
INodeOutputsValue,
|
INodeOutputsValue,
|
||||||
INodeParams
|
INodeParams
|
||||||
} from '../../../src'
|
} from '../../../src'
|
||||||
|
|
||||||
import { Embeddings } from 'langchain/embeddings/base'
|
import { Embeddings } from 'langchain/embeddings/base'
|
||||||
import { VectorStore } from 'langchain/vectorstores/base'
|
import { VectorStore } from 'langchain/vectorstores/base'
|
||||||
import { Document } from 'langchain/document'
|
import { Document } from 'langchain/document'
|
||||||
import { createClient, SearchOptions } from 'redis'
|
import { createClient, SearchOptions, RedisClientOptions } from 'redis'
|
||||||
import { RedisVectorStore } from 'langchain/vectorstores/redis'
|
import { RedisVectorStore } from 'langchain/vectorstores/redis'
|
||||||
import { escapeSpecialChars, unEscapeSpecialChars } from './utils'
|
import { escapeSpecialChars, unEscapeSpecialChars } from './utils'
|
||||||
|
import { isEqual } from 'lodash'
|
||||||
|
|
||||||
|
let redisClientSingleton: ReturnType<typeof createClient>
|
||||||
|
let redisClientOption: RedisClientOptions
|
||||||
|
|
||||||
|
const getRedisClient = async (option: RedisClientOptions) => {
|
||||||
|
if (!redisClientSingleton) {
|
||||||
|
// if client doesn't exists
|
||||||
|
redisClientSingleton = createClient(option)
|
||||||
|
await redisClientSingleton.connect()
|
||||||
|
redisClientOption = option
|
||||||
|
return redisClientSingleton
|
||||||
|
} else if (redisClientSingleton && !isEqual(option, redisClientOption)) {
|
||||||
|
// if client exists but option changed
|
||||||
|
redisClientSingleton.quit()
|
||||||
|
redisClientSingleton = createClient(option)
|
||||||
|
await redisClientSingleton.connect()
|
||||||
|
redisClientOption = option
|
||||||
|
return redisClientSingleton
|
||||||
|
}
|
||||||
|
return redisClientSingleton
|
||||||
|
}
|
||||||
|
|
||||||
export abstract class RedisSearchBase {
|
export abstract class RedisSearchBase {
|
||||||
label: string
|
label: string
|
||||||
@@ -141,8 +162,7 @@ export abstract class RedisSearchBase {
|
|||||||
redisUrl = 'redis://' + username + ':' + password + '@' + host + ':' + portStr
|
redisUrl = 'redis://' + username + ':' + password + '@' + host + ':' + portStr
|
||||||
}
|
}
|
||||||
|
|
||||||
this.redisClient = createClient({ url: redisUrl })
|
this.redisClient = await getRedisClient({ url: redisUrl })
|
||||||
await this.redisClient.connect()
|
|
||||||
|
|
||||||
const vectorStore = await this.constructVectorStore(embeddings, indexName, replaceIndex, docs)
|
const vectorStore = await this.constructVectorStore(embeddings, indexName, replaceIndex, docs)
|
||||||
if (!contentKey || contentKey === '') contentKey = 'content'
|
if (!contentKey || contentKey === '') contentKey = 'content'
|
||||||
|
|||||||
@@ -3,7 +3,6 @@ import { Embeddings } from 'langchain/embeddings/base'
|
|||||||
import { VectorStore } from 'langchain/vectorstores/base'
|
import { VectorStore } from 'langchain/vectorstores/base'
|
||||||
import { RedisVectorStore, RedisVectorStoreConfig } from 'langchain/vectorstores/redis'
|
import { RedisVectorStore, RedisVectorStoreConfig } from 'langchain/vectorstores/redis'
|
||||||
import { Document } from 'langchain/document'
|
import { Document } from 'langchain/document'
|
||||||
|
|
||||||
import { RedisSearchBase } from './RedisSearchBase'
|
import { RedisSearchBase } from './RedisSearchBase'
|
||||||
|
|
||||||
class RedisExisting_VectorStores extends RedisSearchBase implements INode {
|
class RedisExisting_VectorStores extends RedisSearchBase implements INode {
|
||||||
|
|||||||
@@ -1,7 +1,6 @@
|
|||||||
import { ICommonObject, INode, INodeData } from '../../../src/Interface'
|
import { ICommonObject, INode, INodeData } from '../../../src/Interface'
|
||||||
import { Embeddings } from 'langchain/embeddings/base'
|
import { Embeddings } from 'langchain/embeddings/base'
|
||||||
import { Document } from 'langchain/document'
|
import { Document } from 'langchain/document'
|
||||||
|
|
||||||
import { flatten } from 'lodash'
|
import { flatten } from 'lodash'
|
||||||
import { RedisSearchBase } from './RedisSearchBase'
|
import { RedisSearchBase } from './RedisSearchBase'
|
||||||
import { VectorStore } from 'langchain/vectorstores/base'
|
import { VectorStore } from 'langchain/vectorstores/base'
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "flowise-components",
|
"name": "flowise-components",
|
||||||
"version": "1.5.1",
|
"version": "1.5.2",
|
||||||
"description": "Flowiseai Components",
|
"description": "Flowiseai Components",
|
||||||
"main": "dist/src/index",
|
"main": "dist/src/index",
|
||||||
"types": "dist/src/index.d.ts",
|
"types": "dist/src/index.d.ts",
|
||||||
|
|||||||
@@ -88,7 +88,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "chatOpenAI_1",
|
"id": "chatOpenAI_1",
|
||||||
"label": "ChatOpenAI",
|
"label": "ChatOpenAI",
|
||||||
"version": 2,
|
"version": 3,
|
||||||
"name": "chatOpenAI",
|
"name": "chatOpenAI",
|
||||||
"type": "ChatOpenAI",
|
"type": "ChatOpenAI",
|
||||||
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel"],
|
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel"],
|
||||||
@@ -111,6 +111,22 @@
|
|||||||
"label": "gpt-4",
|
"label": "gpt-4",
|
||||||
"name": "gpt-4"
|
"name": "gpt-4"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-turbo-preview",
|
||||||
|
"name": "gpt-4-turbo-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-0125-preview",
|
||||||
|
"name": "gpt-4-0125-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-1106-preview",
|
||||||
|
"name": "gpt-4-1106-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-vision-preview",
|
||||||
|
"name": "gpt-4-vision-preview"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-4-0613",
|
"label": "gpt-4-0613",
|
||||||
"name": "gpt-4-0613"
|
"name": "gpt-4-0613"
|
||||||
@@ -127,6 +143,10 @@
|
|||||||
"label": "gpt-3.5-turbo",
|
"label": "gpt-3.5-turbo",
|
||||||
"name": "gpt-3.5-turbo"
|
"name": "gpt-3.5-turbo"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-3.5-turbo-1106",
|
||||||
|
"name": "gpt-3.5-turbo-1106"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-3.5-turbo-0613",
|
"label": "gpt-3.5-turbo-0613",
|
||||||
"name": "gpt-3.5-turbo-0613"
|
"name": "gpt-3.5-turbo-0613"
|
||||||
@@ -407,7 +427,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "chatOpenAI_2",
|
"id": "chatOpenAI_2",
|
||||||
"label": "ChatOpenAI",
|
"label": "ChatOpenAI",
|
||||||
"version": 2,
|
"version": 3,
|
||||||
"name": "chatOpenAI",
|
"name": "chatOpenAI",
|
||||||
"type": "ChatOpenAI",
|
"type": "ChatOpenAI",
|
||||||
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel"],
|
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel"],
|
||||||
@@ -430,6 +450,22 @@
|
|||||||
"label": "gpt-4",
|
"label": "gpt-4",
|
||||||
"name": "gpt-4"
|
"name": "gpt-4"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-turbo-preview",
|
||||||
|
"name": "gpt-4-turbo-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-0125-preview",
|
||||||
|
"name": "gpt-4-0125-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-1106-preview",
|
||||||
|
"name": "gpt-4-1106-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-vision-preview",
|
||||||
|
"name": "gpt-4-vision-preview"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-4-0613",
|
"label": "gpt-4-0613",
|
||||||
"name": "gpt-4-0613"
|
"name": "gpt-4-0613"
|
||||||
@@ -446,6 +482,10 @@
|
|||||||
"label": "gpt-3.5-turbo",
|
"label": "gpt-3.5-turbo",
|
||||||
"name": "gpt-3.5-turbo"
|
"name": "gpt-3.5-turbo"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-3.5-turbo-1106",
|
||||||
|
"name": "gpt-3.5-turbo-1106"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-3.5-turbo-0613",
|
"label": "gpt-3.5-turbo-0613",
|
||||||
"name": "gpt-3.5-turbo-0613"
|
"name": "gpt-3.5-turbo-0613"
|
||||||
|
|||||||
@@ -396,7 +396,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "chatOpenAI_2",
|
"id": "chatOpenAI_2",
|
||||||
"label": "ChatOpenAI",
|
"label": "ChatOpenAI",
|
||||||
"version": 2,
|
"version": 3,
|
||||||
"name": "chatOpenAI",
|
"name": "chatOpenAI",
|
||||||
"type": "ChatOpenAI",
|
"type": "ChatOpenAI",
|
||||||
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel"],
|
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel"],
|
||||||
@@ -419,6 +419,22 @@
|
|||||||
"label": "gpt-4",
|
"label": "gpt-4",
|
||||||
"name": "gpt-4"
|
"name": "gpt-4"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-turbo-preview",
|
||||||
|
"name": "gpt-4-turbo-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-0125-preview",
|
||||||
|
"name": "gpt-4-0125-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-1106-preview",
|
||||||
|
"name": "gpt-4-1106-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-vision-preview",
|
||||||
|
"name": "gpt-4-vision-preview"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-4-0613",
|
"label": "gpt-4-0613",
|
||||||
"name": "gpt-4-0613"
|
"name": "gpt-4-0613"
|
||||||
@@ -435,6 +451,10 @@
|
|||||||
"label": "gpt-3.5-turbo",
|
"label": "gpt-3.5-turbo",
|
||||||
"name": "gpt-3.5-turbo"
|
"name": "gpt-3.5-turbo"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-3.5-turbo-1106",
|
||||||
|
"name": "gpt-3.5-turbo-1106"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-3.5-turbo-0613",
|
"label": "gpt-3.5-turbo-0613",
|
||||||
"name": "gpt-3.5-turbo-0613"
|
"name": "gpt-3.5-turbo-0613"
|
||||||
@@ -567,7 +587,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "chatOpenAI_1",
|
"id": "chatOpenAI_1",
|
||||||
"label": "ChatOpenAI",
|
"label": "ChatOpenAI",
|
||||||
"version": 2,
|
"version": 3,
|
||||||
"name": "chatOpenAI",
|
"name": "chatOpenAI",
|
||||||
"type": "ChatOpenAI",
|
"type": "ChatOpenAI",
|
||||||
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel"],
|
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel"],
|
||||||
@@ -590,6 +610,22 @@
|
|||||||
"label": "gpt-4",
|
"label": "gpt-4",
|
||||||
"name": "gpt-4"
|
"name": "gpt-4"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-turbo-preview",
|
||||||
|
"name": "gpt-4-turbo-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-0125-preview",
|
||||||
|
"name": "gpt-4-0125-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-1106-preview",
|
||||||
|
"name": "gpt-4-1106-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-vision-preview",
|
||||||
|
"name": "gpt-4-vision-preview"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-4-0613",
|
"label": "gpt-4-0613",
|
||||||
"name": "gpt-4-0613"
|
"name": "gpt-4-0613"
|
||||||
@@ -606,6 +642,10 @@
|
|||||||
"label": "gpt-3.5-turbo",
|
"label": "gpt-3.5-turbo",
|
||||||
"name": "gpt-3.5-turbo"
|
"name": "gpt-3.5-turbo"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-3.5-turbo-1106",
|
||||||
|
"name": "gpt-3.5-turbo-1106"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-3.5-turbo-0613",
|
"label": "gpt-3.5-turbo-0613",
|
||||||
"name": "gpt-3.5-turbo-0613"
|
"name": "gpt-3.5-turbo-0613"
|
||||||
@@ -738,7 +778,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "chatOpenAI_3",
|
"id": "chatOpenAI_3",
|
||||||
"label": "ChatOpenAI",
|
"label": "ChatOpenAI",
|
||||||
"version": 2,
|
"version": 3,
|
||||||
"name": "chatOpenAI",
|
"name": "chatOpenAI",
|
||||||
"type": "ChatOpenAI",
|
"type": "ChatOpenAI",
|
||||||
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel"],
|
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel"],
|
||||||
@@ -761,6 +801,22 @@
|
|||||||
"label": "gpt-4",
|
"label": "gpt-4",
|
||||||
"name": "gpt-4"
|
"name": "gpt-4"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-turbo-preview",
|
||||||
|
"name": "gpt-4-turbo-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-0125-preview",
|
||||||
|
"name": "gpt-4-0125-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-1106-preview",
|
||||||
|
"name": "gpt-4-1106-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-vision-preview",
|
||||||
|
"name": "gpt-4-vision-preview"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-4-0613",
|
"label": "gpt-4-0613",
|
||||||
"name": "gpt-4-0613"
|
"name": "gpt-4-0613"
|
||||||
@@ -777,6 +833,10 @@
|
|||||||
"label": "gpt-3.5-turbo",
|
"label": "gpt-3.5-turbo",
|
||||||
"name": "gpt-3.5-turbo"
|
"name": "gpt-3.5-turbo"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-3.5-turbo-1106",
|
||||||
|
"name": "gpt-3.5-turbo-1106"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-3.5-turbo-0613",
|
"label": "gpt-3.5-turbo-0613",
|
||||||
"name": "gpt-3.5-turbo-0613"
|
"name": "gpt-3.5-turbo-0613"
|
||||||
|
|||||||
@@ -175,7 +175,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "chatOpenAI_0",
|
"id": "chatOpenAI_0",
|
||||||
"label": "ChatOpenAI",
|
"label": "ChatOpenAI",
|
||||||
"version": 2,
|
"version": 3,
|
||||||
"name": "chatOpenAI",
|
"name": "chatOpenAI",
|
||||||
"type": "ChatOpenAI",
|
"type": "ChatOpenAI",
|
||||||
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel"],
|
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel"],
|
||||||
@@ -198,6 +198,22 @@
|
|||||||
"label": "gpt-4",
|
"label": "gpt-4",
|
||||||
"name": "gpt-4"
|
"name": "gpt-4"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-turbo-preview",
|
||||||
|
"name": "gpt-4-turbo-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-0125-preview",
|
||||||
|
"name": "gpt-4-0125-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-1106-preview",
|
||||||
|
"name": "gpt-4-1106-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-vision-preview",
|
||||||
|
"name": "gpt-4-vision-preview"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-4-0613",
|
"label": "gpt-4-0613",
|
||||||
"name": "gpt-4-0613"
|
"name": "gpt-4-0613"
|
||||||
@@ -214,6 +230,10 @@
|
|||||||
"label": "gpt-3.5-turbo",
|
"label": "gpt-3.5-turbo",
|
||||||
"name": "gpt-3.5-turbo"
|
"name": "gpt-3.5-turbo"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-3.5-turbo-1106",
|
||||||
|
"name": "gpt-3.5-turbo-1106"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-3.5-turbo-0613",
|
"label": "gpt-3.5-turbo-0613",
|
||||||
"name": "gpt-3.5-turbo-0613"
|
"name": "gpt-3.5-turbo-0613"
|
||||||
@@ -381,13 +401,23 @@
|
|||||||
"type": "BaseLLMOutputParser",
|
"type": "BaseLLMOutputParser",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"id": "llmChain_0-input-outputParser-BaseLLMOutputParser"
|
"id": "llmChain_0-input-outputParser-BaseLLMOutputParser"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "Input Moderation",
|
||||||
|
"description": "Detect text that could generate harmful output and prevent it from being sent to the language model",
|
||||||
|
"name": "inputModeration",
|
||||||
|
"type": "Moderation",
|
||||||
|
"optional": true,
|
||||||
|
"list": true,
|
||||||
|
"id": "llmChain_0-input-inputModeration-Moderation"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"model": "{{chatOpenAI_0.data.instance}}",
|
"model": "{{chatOpenAI_0.data.instance}}",
|
||||||
"prompt": "{{fewShotPromptTemplate_1.data.instance}}",
|
"prompt": "{{fewShotPromptTemplate_1.data.instance}}",
|
||||||
"outputParser": "",
|
"outputParser": "",
|
||||||
"chainName": ""
|
"chainName": "",
|
||||||
|
"inputModeration": ""
|
||||||
},
|
},
|
||||||
"outputAnchors": [
|
"outputAnchors": [
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -251,7 +251,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "chatOpenAI_0",
|
"id": "chatOpenAI_0",
|
||||||
"label": "ChatOpenAI",
|
"label": "ChatOpenAI",
|
||||||
"version": 2,
|
"version": 3,
|
||||||
"name": "chatOpenAI",
|
"name": "chatOpenAI",
|
||||||
"type": "ChatOpenAI",
|
"type": "ChatOpenAI",
|
||||||
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel"],
|
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel"],
|
||||||
@@ -274,6 +274,22 @@
|
|||||||
"label": "gpt-4",
|
"label": "gpt-4",
|
||||||
"name": "gpt-4"
|
"name": "gpt-4"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-turbo-preview",
|
||||||
|
"name": "gpt-4-turbo-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-0125-preview",
|
||||||
|
"name": "gpt-4-0125-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-1106-preview",
|
||||||
|
"name": "gpt-4-1106-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-vision-preview",
|
||||||
|
"name": "gpt-4-vision-preview"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-4-0613",
|
"label": "gpt-4-0613",
|
||||||
"name": "gpt-4-0613"
|
"name": "gpt-4-0613"
|
||||||
@@ -290,6 +306,10 @@
|
|||||||
"label": "gpt-3.5-turbo",
|
"label": "gpt-3.5-turbo",
|
||||||
"name": "gpt-3.5-turbo"
|
"name": "gpt-3.5-turbo"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-3.5-turbo-1106",
|
||||||
|
"name": "gpt-3.5-turbo-1106"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-3.5-turbo-0613",
|
"label": "gpt-3.5-turbo-0613",
|
||||||
"name": "gpt-3.5-turbo-0613"
|
"name": "gpt-3.5-turbo-0613"
|
||||||
@@ -422,7 +442,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "openAIEmbeddings_0",
|
"id": "openAIEmbeddings_0",
|
||||||
"label": "OpenAI Embeddings",
|
"label": "OpenAI Embeddings",
|
||||||
"version": 1,
|
"version": 2,
|
||||||
"name": "openAIEmbeddings",
|
"name": "openAIEmbeddings",
|
||||||
"type": "OpenAIEmbeddings",
|
"type": "OpenAIEmbeddings",
|
||||||
"baseClasses": ["OpenAIEmbeddings", "Embeddings"],
|
"baseClasses": ["OpenAIEmbeddings", "Embeddings"],
|
||||||
@@ -436,6 +456,28 @@
|
|||||||
"credentialNames": ["openAIApi"],
|
"credentialNames": ["openAIApi"],
|
||||||
"id": "openAIEmbeddings_0-input-credential-credential"
|
"id": "openAIEmbeddings_0-input-credential-credential"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "Model Name",
|
||||||
|
"name": "modelName",
|
||||||
|
"type": "options",
|
||||||
|
"options": [
|
||||||
|
{
|
||||||
|
"label": "text-embedding-3-large",
|
||||||
|
"name": "text-embedding-3-large"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "text-embedding-3-small",
|
||||||
|
"name": "text-embedding-3-small"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "text-embedding-ada-002",
|
||||||
|
"name": "text-embedding-ada-002"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"default": "text-embedding-ada-002",
|
||||||
|
"optional": true,
|
||||||
|
"id": "openAIEmbeddings_0-input-modelName-options"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "Strip New Lines",
|
"label": "Strip New Lines",
|
||||||
"name": "stripNewLines",
|
"name": "stripNewLines",
|
||||||
@@ -474,7 +516,8 @@
|
|||||||
"stripNewLines": "",
|
"stripNewLines": "",
|
||||||
"batchSize": "",
|
"batchSize": "",
|
||||||
"timeout": "",
|
"timeout": "",
|
||||||
"basepath": ""
|
"basepath": "",
|
||||||
|
"modelName": "text-embedding-ada-002"
|
||||||
},
|
},
|
||||||
"outputAnchors": [
|
"outputAnchors": [
|
||||||
{
|
{
|
||||||
@@ -506,7 +549,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "pinecone_0",
|
"id": "pinecone_0",
|
||||||
"label": "Pinecone",
|
"label": "Pinecone",
|
||||||
"version": 1,
|
"version": 2,
|
||||||
"name": "pinecone",
|
"name": "pinecone",
|
||||||
"type": "Pinecone",
|
"type": "Pinecone",
|
||||||
"baseClasses": ["Pinecone", "VectorStoreRetriever", "BaseRetriever"],
|
"baseClasses": ["Pinecone", "VectorStoreRetriever", "BaseRetriever"],
|
||||||
|
|||||||
@@ -77,7 +77,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "openAIEmbeddings_0",
|
"id": "openAIEmbeddings_0",
|
||||||
"label": "OpenAI Embeddings",
|
"label": "OpenAI Embeddings",
|
||||||
"version": 1,
|
"version": 2,
|
||||||
"name": "openAIEmbeddings",
|
"name": "openAIEmbeddings",
|
||||||
"type": "OpenAIEmbeddings",
|
"type": "OpenAIEmbeddings",
|
||||||
"baseClasses": ["OpenAIEmbeddings", "Embeddings"],
|
"baseClasses": ["OpenAIEmbeddings", "Embeddings"],
|
||||||
@@ -91,6 +91,28 @@
|
|||||||
"credentialNames": ["openAIApi"],
|
"credentialNames": ["openAIApi"],
|
||||||
"id": "openAIEmbeddings_0-input-credential-credential"
|
"id": "openAIEmbeddings_0-input-credential-credential"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "Model Name",
|
||||||
|
"name": "modelName",
|
||||||
|
"type": "options",
|
||||||
|
"options": [
|
||||||
|
{
|
||||||
|
"label": "text-embedding-3-large",
|
||||||
|
"name": "text-embedding-3-large"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "text-embedding-3-small",
|
||||||
|
"name": "text-embedding-3-small"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "text-embedding-ada-002",
|
||||||
|
"name": "text-embedding-ada-002"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"default": "text-embedding-ada-002",
|
||||||
|
"optional": true,
|
||||||
|
"id": "openAIEmbeddings_0-input-modelName-options"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "Strip New Lines",
|
"label": "Strip New Lines",
|
||||||
"name": "stripNewLines",
|
"name": "stripNewLines",
|
||||||
@@ -129,7 +151,8 @@
|
|||||||
"stripNewLines": "",
|
"stripNewLines": "",
|
||||||
"batchSize": "",
|
"batchSize": "",
|
||||||
"timeout": "",
|
"timeout": "",
|
||||||
"basepath": ""
|
"basepath": "",
|
||||||
|
"modelName": "text-embedding-ada-002"
|
||||||
},
|
},
|
||||||
"outputAnchors": [
|
"outputAnchors": [
|
||||||
{
|
{
|
||||||
@@ -161,7 +184,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "pinecone_0",
|
"id": "pinecone_0",
|
||||||
"label": "Pinecone",
|
"label": "Pinecone",
|
||||||
"version": 1,
|
"version": 2,
|
||||||
"name": "pinecone",
|
"name": "pinecone",
|
||||||
"type": "Pinecone",
|
"type": "Pinecone",
|
||||||
"baseClasses": ["Pinecone", "VectorStoreRetriever", "BaseRetriever"],
|
"baseClasses": ["Pinecone", "VectorStoreRetriever", "BaseRetriever"],
|
||||||
@@ -321,7 +344,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "chatOpenAI_0",
|
"id": "chatOpenAI_0",
|
||||||
"label": "ChatOpenAI",
|
"label": "ChatOpenAI",
|
||||||
"version": 2,
|
"version": 3,
|
||||||
"name": "chatOpenAI",
|
"name": "chatOpenAI",
|
||||||
"type": "ChatOpenAI",
|
"type": "ChatOpenAI",
|
||||||
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
||||||
@@ -344,6 +367,14 @@
|
|||||||
"label": "gpt-4",
|
"label": "gpt-4",
|
||||||
"name": "gpt-4"
|
"name": "gpt-4"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-turbo-preview",
|
||||||
|
"name": "gpt-4-turbo-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-0125-preview",
|
||||||
|
"name": "gpt-4-0125-preview"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-4-1106-preview",
|
"label": "gpt-4-1106-preview",
|
||||||
"name": "gpt-4-1106-preview"
|
"name": "gpt-4-1106-preview"
|
||||||
|
|||||||
@@ -70,7 +70,7 @@
|
|||||||
"id": "chatOpenAI_0",
|
"id": "chatOpenAI_0",
|
||||||
"label": "ChatOpenAI",
|
"label": "ChatOpenAI",
|
||||||
"name": "chatOpenAI",
|
"name": "chatOpenAI",
|
||||||
"version": 2,
|
"version": 3,
|
||||||
"type": "ChatOpenAI",
|
"type": "ChatOpenAI",
|
||||||
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel"],
|
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel"],
|
||||||
"category": "Chat Models",
|
"category": "Chat Models",
|
||||||
@@ -92,6 +92,22 @@
|
|||||||
"label": "gpt-4",
|
"label": "gpt-4",
|
||||||
"name": "gpt-4"
|
"name": "gpt-4"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-turbo-preview",
|
||||||
|
"name": "gpt-4-turbo-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-0125-preview",
|
||||||
|
"name": "gpt-4-0125-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-1106-preview",
|
||||||
|
"name": "gpt-4-1106-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-vision-preview",
|
||||||
|
"name": "gpt-4-vision-preview"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-4-0613",
|
"label": "gpt-4-0613",
|
||||||
"name": "gpt-4-0613"
|
"name": "gpt-4-0613"
|
||||||
@@ -108,6 +124,10 @@
|
|||||||
"label": "gpt-3.5-turbo",
|
"label": "gpt-3.5-turbo",
|
||||||
"name": "gpt-3.5-turbo"
|
"name": "gpt-3.5-turbo"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-3.5-turbo-1106",
|
||||||
|
"name": "gpt-3.5-turbo-1106"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-3.5-turbo-0613",
|
"label": "gpt-3.5-turbo-0613",
|
||||||
"name": "gpt-3.5-turbo-0613"
|
"name": "gpt-3.5-turbo-0613"
|
||||||
|
|||||||
@@ -194,7 +194,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "chatOpenAI_0",
|
"id": "chatOpenAI_0",
|
||||||
"label": "ChatOpenAI",
|
"label": "ChatOpenAI",
|
||||||
"version": 2,
|
"version": 3,
|
||||||
"name": "chatOpenAI",
|
"name": "chatOpenAI",
|
||||||
"type": "ChatOpenAI",
|
"type": "ChatOpenAI",
|
||||||
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
||||||
@@ -217,6 +217,22 @@
|
|||||||
"label": "gpt-4",
|
"label": "gpt-4",
|
||||||
"name": "gpt-4"
|
"name": "gpt-4"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-turbo-preview",
|
||||||
|
"name": "gpt-4-turbo-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-0125-preview",
|
||||||
|
"name": "gpt-4-0125-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-1106-preview",
|
||||||
|
"name": "gpt-4-1106-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-vision-preview",
|
||||||
|
"name": "gpt-4-vision-preview"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-4-0613",
|
"label": "gpt-4-0613",
|
||||||
"name": "gpt-4-0613"
|
"name": "gpt-4-0613"
|
||||||
@@ -233,6 +249,10 @@
|
|||||||
"label": "gpt-3.5-turbo",
|
"label": "gpt-3.5-turbo",
|
||||||
"name": "gpt-3.5-turbo"
|
"name": "gpt-3.5-turbo"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-3.5-turbo-1106",
|
||||||
|
"name": "gpt-3.5-turbo-1106"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-3.5-turbo-0613",
|
"label": "gpt-3.5-turbo-0613",
|
||||||
"name": "gpt-3.5-turbo-0613"
|
"name": "gpt-3.5-turbo-0613"
|
||||||
@@ -440,7 +460,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "openAIEmbeddings_0",
|
"id": "openAIEmbeddings_0",
|
||||||
"label": "OpenAI Embeddings",
|
"label": "OpenAI Embeddings",
|
||||||
"version": 1,
|
"version": 2,
|
||||||
"name": "openAIEmbeddings",
|
"name": "openAIEmbeddings",
|
||||||
"type": "OpenAIEmbeddings",
|
"type": "OpenAIEmbeddings",
|
||||||
"baseClasses": ["OpenAIEmbeddings", "Embeddings"],
|
"baseClasses": ["OpenAIEmbeddings", "Embeddings"],
|
||||||
@@ -454,6 +474,28 @@
|
|||||||
"credentialNames": ["openAIApi"],
|
"credentialNames": ["openAIApi"],
|
||||||
"id": "openAIEmbeddings_0-input-credential-credential"
|
"id": "openAIEmbeddings_0-input-credential-credential"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "Model Name",
|
||||||
|
"name": "modelName",
|
||||||
|
"type": "options",
|
||||||
|
"options": [
|
||||||
|
{
|
||||||
|
"label": "text-embedding-3-large",
|
||||||
|
"name": "text-embedding-3-large"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "text-embedding-3-small",
|
||||||
|
"name": "text-embedding-3-small"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "text-embedding-ada-002",
|
||||||
|
"name": "text-embedding-ada-002"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"default": "text-embedding-ada-002",
|
||||||
|
"optional": true,
|
||||||
|
"id": "openAIEmbeddings_0-input-modelName-options"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "Strip New Lines",
|
"label": "Strip New Lines",
|
||||||
"name": "stripNewLines",
|
"name": "stripNewLines",
|
||||||
@@ -492,7 +534,8 @@
|
|||||||
"stripNewLines": "",
|
"stripNewLines": "",
|
||||||
"batchSize": "",
|
"batchSize": "",
|
||||||
"timeout": "",
|
"timeout": "",
|
||||||
"basepath": ""
|
"basepath": "",
|
||||||
|
"modelName": "text-embedding-ada-002"
|
||||||
},
|
},
|
||||||
"outputAnchors": [
|
"outputAnchors": [
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -215,7 +215,7 @@
|
|||||||
"id": "chatOpenAI_0",
|
"id": "chatOpenAI_0",
|
||||||
"label": "ChatOpenAI",
|
"label": "ChatOpenAI",
|
||||||
"name": "chatOpenAI",
|
"name": "chatOpenAI",
|
||||||
"version": 2,
|
"version": 3,
|
||||||
"type": "ChatOpenAI",
|
"type": "ChatOpenAI",
|
||||||
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel"],
|
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel"],
|
||||||
"category": "Chat Models",
|
"category": "Chat Models",
|
||||||
@@ -237,6 +237,22 @@
|
|||||||
"label": "gpt-4",
|
"label": "gpt-4",
|
||||||
"name": "gpt-4"
|
"name": "gpt-4"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-turbo-preview",
|
||||||
|
"name": "gpt-4-turbo-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-0125-preview",
|
||||||
|
"name": "gpt-4-0125-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-1106-preview",
|
||||||
|
"name": "gpt-4-1106-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-vision-preview",
|
||||||
|
"name": "gpt-4-vision-preview"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-4-0613",
|
"label": "gpt-4-0613",
|
||||||
"name": "gpt-4-0613"
|
"name": "gpt-4-0613"
|
||||||
@@ -253,6 +269,10 @@
|
|||||||
"label": "gpt-3.5-turbo",
|
"label": "gpt-3.5-turbo",
|
||||||
"name": "gpt-3.5-turbo"
|
"name": "gpt-3.5-turbo"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-3.5-turbo-1106",
|
||||||
|
"name": "gpt-3.5-turbo-1106"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-3.5-turbo-0613",
|
"label": "gpt-3.5-turbo-0613",
|
||||||
"name": "gpt-3.5-turbo-0613"
|
"name": "gpt-3.5-turbo-0613"
|
||||||
|
|||||||
@@ -156,7 +156,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "chatOpenAI_0",
|
"id": "chatOpenAI_0",
|
||||||
"label": "ChatOpenAI",
|
"label": "ChatOpenAI",
|
||||||
"version": 2,
|
"version": 3,
|
||||||
"name": "chatOpenAI",
|
"name": "chatOpenAI",
|
||||||
"type": "ChatOpenAI",
|
"type": "ChatOpenAI",
|
||||||
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel"],
|
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel"],
|
||||||
@@ -179,6 +179,22 @@
|
|||||||
"label": "gpt-4",
|
"label": "gpt-4",
|
||||||
"name": "gpt-4"
|
"name": "gpt-4"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-turbo-preview",
|
||||||
|
"name": "gpt-4-turbo-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-0125-preview",
|
||||||
|
"name": "gpt-4-0125-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-1106-preview",
|
||||||
|
"name": "gpt-4-1106-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-vision-preview",
|
||||||
|
"name": "gpt-4-vision-preview"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-4-0613",
|
"label": "gpt-4-0613",
|
||||||
"name": "gpt-4-0613"
|
"name": "gpt-4-0613"
|
||||||
@@ -195,6 +211,10 @@
|
|||||||
"label": "gpt-3.5-turbo",
|
"label": "gpt-3.5-turbo",
|
||||||
"name": "gpt-3.5-turbo"
|
"name": "gpt-3.5-turbo"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-3.5-turbo-1106",
|
||||||
|
"name": "gpt-3.5-turbo-1106"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-3.5-turbo-0613",
|
"label": "gpt-3.5-turbo-0613",
|
||||||
"name": "gpt-3.5-turbo-0613"
|
"name": "gpt-3.5-turbo-0613"
|
||||||
|
|||||||
@@ -14,7 +14,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "openAIEmbeddings_0",
|
"id": "openAIEmbeddings_0",
|
||||||
"label": "OpenAI Embeddings",
|
"label": "OpenAI Embeddings",
|
||||||
"version": 1,
|
"version": 2,
|
||||||
"name": "openAIEmbeddings",
|
"name": "openAIEmbeddings",
|
||||||
"type": "OpenAIEmbeddings",
|
"type": "OpenAIEmbeddings",
|
||||||
"baseClasses": ["OpenAIEmbeddings", "Embeddings"],
|
"baseClasses": ["OpenAIEmbeddings", "Embeddings"],
|
||||||
@@ -28,6 +28,28 @@
|
|||||||
"credentialNames": ["openAIApi"],
|
"credentialNames": ["openAIApi"],
|
||||||
"id": "openAIEmbeddings_0-input-credential-credential"
|
"id": "openAIEmbeddings_0-input-credential-credential"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "Model Name",
|
||||||
|
"name": "modelName",
|
||||||
|
"type": "options",
|
||||||
|
"options": [
|
||||||
|
{
|
||||||
|
"label": "text-embedding-3-large",
|
||||||
|
"name": "text-embedding-3-large"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "text-embedding-3-small",
|
||||||
|
"name": "text-embedding-3-small"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "text-embedding-ada-002",
|
||||||
|
"name": "text-embedding-ada-002"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"default": "text-embedding-ada-002",
|
||||||
|
"optional": true,
|
||||||
|
"id": "openAIEmbeddings_0-input-modelName-options"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "Strip New Lines",
|
"label": "Strip New Lines",
|
||||||
"name": "stripNewLines",
|
"name": "stripNewLines",
|
||||||
@@ -66,7 +88,8 @@
|
|||||||
"stripNewLines": "",
|
"stripNewLines": "",
|
||||||
"batchSize": "",
|
"batchSize": "",
|
||||||
"timeout": "",
|
"timeout": "",
|
||||||
"basepath": ""
|
"basepath": "",
|
||||||
|
"modelName": "text-embedding-ada-002"
|
||||||
},
|
},
|
||||||
"outputAnchors": [
|
"outputAnchors": [
|
||||||
{
|
{
|
||||||
@@ -296,7 +319,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "pinecone_0",
|
"id": "pinecone_0",
|
||||||
"label": "Pinecone",
|
"label": "Pinecone",
|
||||||
"version": 1,
|
"version": 2,
|
||||||
"name": "pinecone",
|
"name": "pinecone",
|
||||||
"type": "Pinecone",
|
"type": "Pinecone",
|
||||||
"baseClasses": ["Pinecone", "VectorStoreRetriever", "BaseRetriever"],
|
"baseClasses": ["Pinecone", "VectorStoreRetriever", "BaseRetriever"],
|
||||||
@@ -456,7 +479,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "chatOpenAI_0",
|
"id": "chatOpenAI_0",
|
||||||
"label": "ChatOpenAI",
|
"label": "ChatOpenAI",
|
||||||
"version": 2,
|
"version": 3,
|
||||||
"name": "chatOpenAI",
|
"name": "chatOpenAI",
|
||||||
"type": "ChatOpenAI",
|
"type": "ChatOpenAI",
|
||||||
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
||||||
@@ -479,6 +502,14 @@
|
|||||||
"label": "gpt-4",
|
"label": "gpt-4",
|
||||||
"name": "gpt-4"
|
"name": "gpt-4"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-turbo-preview",
|
||||||
|
"name": "gpt-4-turbo-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-0125-preview",
|
||||||
|
"name": "gpt-4-0125-preview"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-4-1106-preview",
|
"label": "gpt-4-1106-preview",
|
||||||
"name": "gpt-4-1106-preview"
|
"name": "gpt-4-1106-preview"
|
||||||
|
|||||||
@@ -14,7 +14,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "openAIEmbeddings_0",
|
"id": "openAIEmbeddings_0",
|
||||||
"label": "OpenAI Embeddings",
|
"label": "OpenAI Embeddings",
|
||||||
"version": 1,
|
"version": 2,
|
||||||
"name": "openAIEmbeddings",
|
"name": "openAIEmbeddings",
|
||||||
"type": "OpenAIEmbeddings",
|
"type": "OpenAIEmbeddings",
|
||||||
"baseClasses": ["OpenAIEmbeddings", "Embeddings"],
|
"baseClasses": ["OpenAIEmbeddings", "Embeddings"],
|
||||||
@@ -28,6 +28,28 @@
|
|||||||
"credentialNames": ["openAIApi"],
|
"credentialNames": ["openAIApi"],
|
||||||
"id": "openAIEmbeddings_0-input-credential-credential"
|
"id": "openAIEmbeddings_0-input-credential-credential"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "Model Name",
|
||||||
|
"name": "modelName",
|
||||||
|
"type": "options",
|
||||||
|
"options": [
|
||||||
|
{
|
||||||
|
"label": "text-embedding-3-large",
|
||||||
|
"name": "text-embedding-3-large"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "text-embedding-3-small",
|
||||||
|
"name": "text-embedding-3-small"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "text-embedding-ada-002",
|
||||||
|
"name": "text-embedding-ada-002"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"default": "text-embedding-ada-002",
|
||||||
|
"optional": true,
|
||||||
|
"id": "openAIEmbeddings_0-input-modelName-options"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "Strip New Lines",
|
"label": "Strip New Lines",
|
||||||
"name": "stripNewLines",
|
"name": "stripNewLines",
|
||||||
@@ -66,7 +88,8 @@
|
|||||||
"stripNewLines": "",
|
"stripNewLines": "",
|
||||||
"batchSize": "",
|
"batchSize": "",
|
||||||
"timeout": "",
|
"timeout": "",
|
||||||
"basepath": ""
|
"basepath": "",
|
||||||
|
"modelName": "text-embedding-ada-002"
|
||||||
},
|
},
|
||||||
"outputAnchors": [
|
"outputAnchors": [
|
||||||
{
|
{
|
||||||
@@ -346,7 +369,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "chatOpenAI_0",
|
"id": "chatOpenAI_0",
|
||||||
"label": "ChatOpenAI",
|
"label": "ChatOpenAI",
|
||||||
"version": 2,
|
"version": 3,
|
||||||
"name": "chatOpenAI",
|
"name": "chatOpenAI",
|
||||||
"type": "ChatOpenAI",
|
"type": "ChatOpenAI",
|
||||||
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
||||||
@@ -369,6 +392,14 @@
|
|||||||
"label": "gpt-4",
|
"label": "gpt-4",
|
||||||
"name": "gpt-4"
|
"name": "gpt-4"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-turbo-preview",
|
||||||
|
"name": "gpt-4-turbo-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-0125-preview",
|
||||||
|
"name": "gpt-4-0125-preview"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-4-1106-preview",
|
"label": "gpt-4-1106-preview",
|
||||||
"name": "gpt-4-1106-preview"
|
"name": "gpt-4-1106-preview"
|
||||||
@@ -536,7 +567,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "pinecone_0",
|
"id": "pinecone_0",
|
||||||
"label": "Pinecone",
|
"label": "Pinecone",
|
||||||
"version": 1,
|
"version": 2,
|
||||||
"name": "pinecone",
|
"name": "pinecone",
|
||||||
"type": "Pinecone",
|
"type": "Pinecone",
|
||||||
"baseClasses": ["Pinecone", "VectorStoreRetriever", "BaseRetriever"],
|
"baseClasses": ["Pinecone", "VectorStoreRetriever", "BaseRetriever"],
|
||||||
|
|||||||
@@ -376,7 +376,7 @@
|
|||||||
"id": "chatOpenAI_0",
|
"id": "chatOpenAI_0",
|
||||||
"label": "ChatOpenAI",
|
"label": "ChatOpenAI",
|
||||||
"name": "chatOpenAI",
|
"name": "chatOpenAI",
|
||||||
"version": 2,
|
"version": 3,
|
||||||
"type": "ChatOpenAI",
|
"type": "ChatOpenAI",
|
||||||
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel"],
|
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel"],
|
||||||
"category": "Chat Models",
|
"category": "Chat Models",
|
||||||
@@ -398,6 +398,22 @@
|
|||||||
"label": "gpt-4",
|
"label": "gpt-4",
|
||||||
"name": "gpt-4"
|
"name": "gpt-4"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-turbo-preview",
|
||||||
|
"name": "gpt-4-turbo-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-0125-preview",
|
||||||
|
"name": "gpt-4-0125-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-1106-preview",
|
||||||
|
"name": "gpt-4-1106-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-vision-preview",
|
||||||
|
"name": "gpt-4-vision-preview"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-4-0613",
|
"label": "gpt-4-0613",
|
||||||
"name": "gpt-4-0613"
|
"name": "gpt-4-0613"
|
||||||
@@ -414,6 +430,10 @@
|
|||||||
"label": "gpt-3.5-turbo",
|
"label": "gpt-3.5-turbo",
|
||||||
"name": "gpt-3.5-turbo"
|
"name": "gpt-3.5-turbo"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-3.5-turbo-1106",
|
||||||
|
"name": "gpt-3.5-turbo-1106"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-3.5-turbo-0613",
|
"label": "gpt-3.5-turbo-0613",
|
||||||
"name": "gpt-3.5-turbo-0613"
|
"name": "gpt-3.5-turbo-0613"
|
||||||
@@ -547,7 +567,7 @@
|
|||||||
"id": "openAIEmbeddings_0",
|
"id": "openAIEmbeddings_0",
|
||||||
"label": "OpenAI Embeddings",
|
"label": "OpenAI Embeddings",
|
||||||
"name": "openAIEmbeddings",
|
"name": "openAIEmbeddings",
|
||||||
"version": 1,
|
"version": 2,
|
||||||
"type": "OpenAIEmbeddings",
|
"type": "OpenAIEmbeddings",
|
||||||
"baseClasses": ["OpenAIEmbeddings", "Embeddings"],
|
"baseClasses": ["OpenAIEmbeddings", "Embeddings"],
|
||||||
"category": "Embeddings",
|
"category": "Embeddings",
|
||||||
@@ -560,6 +580,28 @@
|
|||||||
"credentialNames": ["openAIApi"],
|
"credentialNames": ["openAIApi"],
|
||||||
"id": "openAIEmbeddings_0-input-credential-credential"
|
"id": "openAIEmbeddings_0-input-credential-credential"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "Model Name",
|
||||||
|
"name": "modelName",
|
||||||
|
"type": "options",
|
||||||
|
"options": [
|
||||||
|
{
|
||||||
|
"label": "text-embedding-3-large",
|
||||||
|
"name": "text-embedding-3-large"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "text-embedding-3-small",
|
||||||
|
"name": "text-embedding-3-small"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "text-embedding-ada-002",
|
||||||
|
"name": "text-embedding-ada-002"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"default": "text-embedding-ada-002",
|
||||||
|
"optional": true,
|
||||||
|
"id": "openAIEmbeddings_0-input-modelName-options"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "Strip New Lines",
|
"label": "Strip New Lines",
|
||||||
"name": "stripNewLines",
|
"name": "stripNewLines",
|
||||||
@@ -598,7 +640,8 @@
|
|||||||
"stripNewLines": "",
|
"stripNewLines": "",
|
||||||
"batchSize": "",
|
"batchSize": "",
|
||||||
"timeout": "",
|
"timeout": "",
|
||||||
"basepath": ""
|
"basepath": "",
|
||||||
|
"modelName": "text-embedding-ada-002"
|
||||||
},
|
},
|
||||||
"outputAnchors": [
|
"outputAnchors": [
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -234,13 +234,23 @@
|
|||||||
"type": "BaseLLMOutputParser",
|
"type": "BaseLLMOutputParser",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"id": "llmChain_0-input-outputParser-BaseLLMOutputParser"
|
"id": "llmChain_0-input-outputParser-BaseLLMOutputParser"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "Input Moderation",
|
||||||
|
"description": "Detect text that could generate harmful output and prevent it from being sent to the language model",
|
||||||
|
"name": "inputModeration",
|
||||||
|
"type": "Moderation",
|
||||||
|
"optional": true,
|
||||||
|
"list": true,
|
||||||
|
"id": "llmChain_0-input-inputModeration-Moderation"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"model": "{{huggingFaceInference_LLMs_0.data.instance}}",
|
"model": "{{huggingFaceInference_LLMs_0.data.instance}}",
|
||||||
"prompt": "{{promptTemplate_0.data.instance}}",
|
"prompt": "{{promptTemplate_0.data.instance}}",
|
||||||
"outputParser": "",
|
"outputParser": "",
|
||||||
"chainName": ""
|
"chainName": "",
|
||||||
|
"inputModeration": ""
|
||||||
},
|
},
|
||||||
"outputAnchors": [
|
"outputAnchors": [
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -489,13 +489,23 @@
|
|||||||
"type": "BaseLLMOutputParser",
|
"type": "BaseLLMOutputParser",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"id": "llmChain_0-input-outputParser-BaseLLMOutputParser"
|
"id": "llmChain_0-input-outputParser-BaseLLMOutputParser"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "Input Moderation",
|
||||||
|
"description": "Detect text that could generate harmful output and prevent it from being sent to the language model",
|
||||||
|
"name": "inputModeration",
|
||||||
|
"type": "Moderation",
|
||||||
|
"optional": true,
|
||||||
|
"list": true,
|
||||||
|
"id": "llmChain_0-input-inputModeration-Moderation"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"model": "{{openAI_1.data.instance}}",
|
"model": "{{openAI_1.data.instance}}",
|
||||||
"prompt": "{{promptTemplate_0.data.instance}}",
|
"prompt": "{{promptTemplate_0.data.instance}}",
|
||||||
"outputParser": "",
|
"outputParser": "",
|
||||||
"chainName": "FirstChain"
|
"chainName": "FirstChain",
|
||||||
|
"inputModeration": ""
|
||||||
},
|
},
|
||||||
"outputAnchors": [
|
"outputAnchors": [
|
||||||
{
|
{
|
||||||
@@ -578,13 +588,23 @@
|
|||||||
"type": "BaseLLMOutputParser",
|
"type": "BaseLLMOutputParser",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"id": "llmChain_1-input-outputParser-BaseLLMOutputParser"
|
"id": "llmChain_1-input-outputParser-BaseLLMOutputParser"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "Input Moderation",
|
||||||
|
"description": "Detect text that could generate harmful output and prevent it from being sent to the language model",
|
||||||
|
"name": "inputModeration",
|
||||||
|
"type": "Moderation",
|
||||||
|
"optional": true,
|
||||||
|
"list": true,
|
||||||
|
"id": "llmChain_1-input-inputModeration-Moderation"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"model": "{{openAI_2.data.instance}}",
|
"model": "{{openAI_2.data.instance}}",
|
||||||
"prompt": "{{promptTemplate_1.data.instance}}",
|
"prompt": "{{promptTemplate_1.data.instance}}",
|
||||||
"outputParser": "",
|
"outputParser": "",
|
||||||
"chainName": "LastChain"
|
"chainName": "LastChain",
|
||||||
|
"inputModeration": ""
|
||||||
},
|
},
|
||||||
"outputAnchors": [
|
"outputAnchors": [
|
||||||
{
|
{
|
||||||
@@ -742,8 +762,8 @@
|
|||||||
"model": "{{chatOpenAI_0.data.instance}}",
|
"model": "{{chatOpenAI_0.data.instance}}",
|
||||||
"prompt": "{{promptTemplate_2.data.instance}}",
|
"prompt": "{{promptTemplate_2.data.instance}}",
|
||||||
"outputParser": "",
|
"outputParser": "",
|
||||||
"inputModeration": "",
|
"chainName": "FallbackChain",
|
||||||
"chainName": "FallbackChain"
|
"inputModeration": ""
|
||||||
},
|
},
|
||||||
"outputAnchors": [
|
"outputAnchors": [
|
||||||
{
|
{
|
||||||
@@ -888,7 +908,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "chatOpenAI_0",
|
"id": "chatOpenAI_0",
|
||||||
"label": "ChatOpenAI",
|
"label": "ChatOpenAI",
|
||||||
"version": 2,
|
"version": 3,
|
||||||
"name": "chatOpenAI",
|
"name": "chatOpenAI",
|
||||||
"type": "ChatOpenAI",
|
"type": "ChatOpenAI",
|
||||||
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
||||||
@@ -911,6 +931,14 @@
|
|||||||
"label": "gpt-4",
|
"label": "gpt-4",
|
||||||
"name": "gpt-4"
|
"name": "gpt-4"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-turbo-preview",
|
||||||
|
"name": "gpt-4-turbo-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-0125-preview",
|
||||||
|
"name": "gpt-4-0125-preview"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-4-1106-preview",
|
"label": "gpt-4-1106-preview",
|
||||||
"name": "gpt-4-1106-preview"
|
"name": "gpt-4-1106-preview"
|
||||||
|
|||||||
@@ -289,13 +289,23 @@
|
|||||||
"type": "BaseLLMOutputParser",
|
"type": "BaseLLMOutputParser",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"id": "llmChain_0-input-outputParser-BaseLLMOutputParser"
|
"id": "llmChain_0-input-outputParser-BaseLLMOutputParser"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "Input Moderation",
|
||||||
|
"description": "Detect text that could generate harmful output and prevent it from being sent to the language model",
|
||||||
|
"name": "inputModeration",
|
||||||
|
"type": "Moderation",
|
||||||
|
"optional": true,
|
||||||
|
"list": true,
|
||||||
|
"id": "llmChain_0-input-inputModeration-Moderation"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"model": "{{replicate_0.data.instance}}",
|
"model": "{{replicate_0.data.instance}}",
|
||||||
"prompt": "{{promptTemplate_0.data.instance}}",
|
"prompt": "{{promptTemplate_0.data.instance}}",
|
||||||
"outputParser": "",
|
"outputParser": "",
|
||||||
"chainName": ""
|
"chainName": "",
|
||||||
|
"inputModeration": ""
|
||||||
},
|
},
|
||||||
"outputAnchors": [
|
"outputAnchors": [
|
||||||
{
|
{
|
||||||
@@ -378,13 +388,23 @@
|
|||||||
"type": "BaseLLMOutputParser",
|
"type": "BaseLLMOutputParser",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"id": "llmChain_1-input-outputParser-BaseLLMOutputParser"
|
"id": "llmChain_1-input-outputParser-BaseLLMOutputParser"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "Input Moderation",
|
||||||
|
"description": "Detect text that could generate harmful output and prevent it from being sent to the language model",
|
||||||
|
"name": "inputModeration",
|
||||||
|
"type": "Moderation",
|
||||||
|
"optional": true,
|
||||||
|
"list": true,
|
||||||
|
"id": "llmChain_1-input-inputModeration-Moderation"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"model": "{{chatOpenAI_0.data.instance}}",
|
"model": "{{chatOpenAI_0.data.instance}}",
|
||||||
"prompt": "{{promptTemplate_1.data.instance}}",
|
"prompt": "{{promptTemplate_1.data.instance}}",
|
||||||
"outputParser": "",
|
"outputParser": "",
|
||||||
"chainName": ""
|
"chainName": "",
|
||||||
|
"inputModeration": ""
|
||||||
},
|
},
|
||||||
"outputAnchors": [
|
"outputAnchors": [
|
||||||
{
|
{
|
||||||
@@ -432,7 +452,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "chatOpenAI_0",
|
"id": "chatOpenAI_0",
|
||||||
"label": "ChatOpenAI",
|
"label": "ChatOpenAI",
|
||||||
"version": 2,
|
"version": 3,
|
||||||
"name": "chatOpenAI",
|
"name": "chatOpenAI",
|
||||||
"type": "ChatOpenAI",
|
"type": "ChatOpenAI",
|
||||||
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
||||||
@@ -455,6 +475,14 @@
|
|||||||
"label": "gpt-4",
|
"label": "gpt-4",
|
||||||
"name": "gpt-4"
|
"name": "gpt-4"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-turbo-preview",
|
||||||
|
"name": "gpt-4-turbo-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-0125-preview",
|
||||||
|
"name": "gpt-4-0125-preview"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-4-1106-preview",
|
"label": "gpt-4-1106-preview",
|
||||||
"name": "gpt-4-1106-preview"
|
"name": "gpt-4-1106-preview"
|
||||||
|
|||||||
@@ -164,7 +164,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "chatOpenAI_0",
|
"id": "chatOpenAI_0",
|
||||||
"label": "ChatOpenAI",
|
"label": "ChatOpenAI",
|
||||||
"version": 2,
|
"version": 3,
|
||||||
"name": "chatOpenAI",
|
"name": "chatOpenAI",
|
||||||
"type": "ChatOpenAI",
|
"type": "ChatOpenAI",
|
||||||
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
||||||
@@ -187,6 +187,14 @@
|
|||||||
"label": "gpt-4",
|
"label": "gpt-4",
|
||||||
"name": "gpt-4"
|
"name": "gpt-4"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-turbo-preview",
|
||||||
|
"name": "gpt-4-turbo-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-0125-preview",
|
||||||
|
"name": "gpt-4-0125-preview"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-4-1106-preview",
|
"label": "gpt-4-1106-preview",
|
||||||
"name": "gpt-4-1106-preview"
|
"name": "gpt-4-1106-preview"
|
||||||
|
|||||||
@@ -49,13 +49,23 @@
|
|||||||
"type": "BaseLLMOutputParser",
|
"type": "BaseLLMOutputParser",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"id": "llmChain_0-input-outputParser-BaseLLMOutputParser"
|
"id": "llmChain_0-input-outputParser-BaseLLMOutputParser"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "Input Moderation",
|
||||||
|
"description": "Detect text that could generate harmful output and prevent it from being sent to the language model",
|
||||||
|
"name": "inputModeration",
|
||||||
|
"type": "Moderation",
|
||||||
|
"optional": true,
|
||||||
|
"list": true,
|
||||||
|
"id": "llmChain_0-input-inputModeration-Moderation"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"model": "{{chatOpenAI_0.data.instance}}",
|
"model": "{{chatOpenAI_0.data.instance}}",
|
||||||
"prompt": "{{promptTemplate_0.data.instance}}",
|
"prompt": "{{promptTemplate_0.data.instance}}",
|
||||||
"outputParser": "{{csvOutputParser_0.data.instance}}",
|
"outputParser": "{{csvOutputParser_0.data.instance}}",
|
||||||
"chainName": ""
|
"chainName": "",
|
||||||
|
"inputModeration": ""
|
||||||
},
|
},
|
||||||
"outputAnchors": [
|
"outputAnchors": [
|
||||||
{
|
{
|
||||||
@@ -213,7 +223,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "chatOpenAI_0",
|
"id": "chatOpenAI_0",
|
||||||
"label": "ChatOpenAI",
|
"label": "ChatOpenAI",
|
||||||
"version": 2,
|
"version": 3,
|
||||||
"name": "chatOpenAI",
|
"name": "chatOpenAI",
|
||||||
"type": "ChatOpenAI",
|
"type": "ChatOpenAI",
|
||||||
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
||||||
@@ -236,6 +246,22 @@
|
|||||||
"label": "gpt-4",
|
"label": "gpt-4",
|
||||||
"name": "gpt-4"
|
"name": "gpt-4"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-turbo-preview",
|
||||||
|
"name": "gpt-4-turbo-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-0125-preview",
|
||||||
|
"name": "gpt-4-0125-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-1106-preview",
|
||||||
|
"name": "gpt-4-1106-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-vision-preview",
|
||||||
|
"name": "gpt-4-vision-preview"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-4-0613",
|
"label": "gpt-4-0613",
|
||||||
"name": "gpt-4-0613"
|
"name": "gpt-4-0613"
|
||||||
@@ -252,6 +278,10 @@
|
|||||||
"label": "gpt-3.5-turbo",
|
"label": "gpt-3.5-turbo",
|
||||||
"name": "gpt-3.5-turbo"
|
"name": "gpt-3.5-turbo"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-3.5-turbo-1106",
|
||||||
|
"name": "gpt-3.5-turbo-1106"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-3.5-turbo-0613",
|
"label": "gpt-3.5-turbo-0613",
|
||||||
"name": "gpt-3.5-turbo-0613"
|
"name": "gpt-3.5-turbo-0613"
|
||||||
|
|||||||
@@ -112,7 +112,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "openAIEmbeddings_0",
|
"id": "openAIEmbeddings_0",
|
||||||
"label": "OpenAI Embeddings",
|
"label": "OpenAI Embeddings",
|
||||||
"version": 1,
|
"version": 2,
|
||||||
"name": "openAIEmbeddings",
|
"name": "openAIEmbeddings",
|
||||||
"type": "OpenAIEmbeddings",
|
"type": "OpenAIEmbeddings",
|
||||||
"baseClasses": ["OpenAIEmbeddings", "Embeddings"],
|
"baseClasses": ["OpenAIEmbeddings", "Embeddings"],
|
||||||
@@ -126,6 +126,28 @@
|
|||||||
"credentialNames": ["openAIApi"],
|
"credentialNames": ["openAIApi"],
|
||||||
"id": "openAIEmbeddings_0-input-credential-credential"
|
"id": "openAIEmbeddings_0-input-credential-credential"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "Model Name",
|
||||||
|
"name": "modelName",
|
||||||
|
"type": "options",
|
||||||
|
"options": [
|
||||||
|
{
|
||||||
|
"label": "text-embedding-3-large",
|
||||||
|
"name": "text-embedding-3-large"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "text-embedding-3-small",
|
||||||
|
"name": "text-embedding-3-small"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "text-embedding-ada-002",
|
||||||
|
"name": "text-embedding-ada-002"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"default": "text-embedding-ada-002",
|
||||||
|
"optional": true,
|
||||||
|
"id": "openAIEmbeddings_0-input-modelName-options"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "Strip New Lines",
|
"label": "Strip New Lines",
|
||||||
"name": "stripNewLines",
|
"name": "stripNewLines",
|
||||||
@@ -164,7 +186,8 @@
|
|||||||
"stripNewLines": "",
|
"stripNewLines": "",
|
||||||
"batchSize": "",
|
"batchSize": "",
|
||||||
"timeout": "",
|
"timeout": "",
|
||||||
"basepath": ""
|
"basepath": "",
|
||||||
|
"modelName": "text-embedding-ada-002"
|
||||||
},
|
},
|
||||||
"outputAnchors": [
|
"outputAnchors": [
|
||||||
{
|
{
|
||||||
@@ -483,7 +506,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "chatOpenAI_0",
|
"id": "chatOpenAI_0",
|
||||||
"label": "ChatOpenAI",
|
"label": "ChatOpenAI",
|
||||||
"version": 2,
|
"version": 3,
|
||||||
"name": "chatOpenAI",
|
"name": "chatOpenAI",
|
||||||
"type": "ChatOpenAI",
|
"type": "ChatOpenAI",
|
||||||
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
||||||
@@ -506,6 +529,14 @@
|
|||||||
"label": "gpt-4",
|
"label": "gpt-4",
|
||||||
"name": "gpt-4"
|
"name": "gpt-4"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-turbo-preview",
|
||||||
|
"name": "gpt-4-turbo-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-0125-preview",
|
||||||
|
"name": "gpt-4-0125-preview"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-4-1106-preview",
|
"label": "gpt-4-1106-preview",
|
||||||
"name": "gpt-4-1106-preview"
|
"name": "gpt-4-1106-preview"
|
||||||
|
|||||||
@@ -346,7 +346,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "openAIEmbeddings_0",
|
"id": "openAIEmbeddings_0",
|
||||||
"label": "OpenAI Embeddings",
|
"label": "OpenAI Embeddings",
|
||||||
"version": 1,
|
"version": 2,
|
||||||
"name": "openAIEmbeddings",
|
"name": "openAIEmbeddings",
|
||||||
"type": "OpenAIEmbeddings",
|
"type": "OpenAIEmbeddings",
|
||||||
"baseClasses": ["OpenAIEmbeddings", "Embeddings"],
|
"baseClasses": ["OpenAIEmbeddings", "Embeddings"],
|
||||||
@@ -360,6 +360,28 @@
|
|||||||
"credentialNames": ["openAIApi"],
|
"credentialNames": ["openAIApi"],
|
||||||
"id": "openAIEmbeddings_0-input-credential-credential"
|
"id": "openAIEmbeddings_0-input-credential-credential"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "Model Name",
|
||||||
|
"name": "modelName",
|
||||||
|
"type": "options",
|
||||||
|
"options": [
|
||||||
|
{
|
||||||
|
"label": "text-embedding-3-large",
|
||||||
|
"name": "text-embedding-3-large"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "text-embedding-3-small",
|
||||||
|
"name": "text-embedding-3-small"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "text-embedding-ada-002",
|
||||||
|
"name": "text-embedding-ada-002"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"default": "text-embedding-ada-002",
|
||||||
|
"optional": true,
|
||||||
|
"id": "openAIEmbeddings_0-input-modelName-options"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "Strip New Lines",
|
"label": "Strip New Lines",
|
||||||
"name": "stripNewLines",
|
"name": "stripNewLines",
|
||||||
@@ -398,7 +420,8 @@
|
|||||||
"stripNewLines": "",
|
"stripNewLines": "",
|
||||||
"batchSize": "",
|
"batchSize": "",
|
||||||
"timeout": "",
|
"timeout": "",
|
||||||
"basepath": ""
|
"basepath": "",
|
||||||
|
"modelName": "text-embedding-ada-002"
|
||||||
},
|
},
|
||||||
"outputAnchors": [
|
"outputAnchors": [
|
||||||
{
|
{
|
||||||
@@ -430,7 +453,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "chatOpenAI_0",
|
"id": "chatOpenAI_0",
|
||||||
"label": "ChatOpenAI",
|
"label": "ChatOpenAI",
|
||||||
"version": 2,
|
"version": 3,
|
||||||
"name": "chatOpenAI",
|
"name": "chatOpenAI",
|
||||||
"type": "ChatOpenAI",
|
"type": "ChatOpenAI",
|
||||||
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
||||||
@@ -453,6 +476,14 @@
|
|||||||
"label": "gpt-4",
|
"label": "gpt-4",
|
||||||
"name": "gpt-4"
|
"name": "gpt-4"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-turbo-preview",
|
||||||
|
"name": "gpt-4-turbo-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-0125-preview",
|
||||||
|
"name": "gpt-4-0125-preview"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-4-1106-preview",
|
"label": "gpt-4-1106-preview",
|
||||||
"name": "gpt-4-1106-preview"
|
"name": "gpt-4-1106-preview"
|
||||||
@@ -620,7 +651,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "pinecone_0",
|
"id": "pinecone_0",
|
||||||
"label": "Pinecone",
|
"label": "Pinecone",
|
||||||
"version": 1,
|
"version": 2,
|
||||||
"name": "pinecone",
|
"name": "pinecone",
|
||||||
"type": "Pinecone",
|
"type": "Pinecone",
|
||||||
"baseClasses": ["Pinecone", "VectorStoreRetriever", "BaseRetriever"],
|
"baseClasses": ["Pinecone", "VectorStoreRetriever", "BaseRetriever"],
|
||||||
|
|||||||
@@ -278,7 +278,7 @@
|
|||||||
"id": "chatOpenAI_0",
|
"id": "chatOpenAI_0",
|
||||||
"label": "ChatOpenAI",
|
"label": "ChatOpenAI",
|
||||||
"name": "chatOpenAI",
|
"name": "chatOpenAI",
|
||||||
"version": 2,
|
"version": 3,
|
||||||
"type": "ChatOpenAI",
|
"type": "ChatOpenAI",
|
||||||
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel"],
|
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel"],
|
||||||
"category": "Chat Models",
|
"category": "Chat Models",
|
||||||
@@ -300,6 +300,22 @@
|
|||||||
"label": "gpt-4",
|
"label": "gpt-4",
|
||||||
"name": "gpt-4"
|
"name": "gpt-4"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-turbo-preview",
|
||||||
|
"name": "gpt-4-turbo-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-0125-preview",
|
||||||
|
"name": "gpt-4-0125-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-1106-preview",
|
||||||
|
"name": "gpt-4-1106-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-vision-preview",
|
||||||
|
"name": "gpt-4-vision-preview"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-4-0613",
|
"label": "gpt-4-0613",
|
||||||
"name": "gpt-4-0613"
|
"name": "gpt-4-0613"
|
||||||
@@ -316,6 +332,10 @@
|
|||||||
"label": "gpt-3.5-turbo",
|
"label": "gpt-3.5-turbo",
|
||||||
"name": "gpt-3.5-turbo"
|
"name": "gpt-3.5-turbo"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-3.5-turbo-1106",
|
||||||
|
"name": "gpt-3.5-turbo-1106"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-3.5-turbo-0613",
|
"label": "gpt-3.5-turbo-0613",
|
||||||
"name": "gpt-3.5-turbo-0613"
|
"name": "gpt-3.5-turbo-0613"
|
||||||
|
|||||||
@@ -281,7 +281,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "openAIEmbeddings_0",
|
"id": "openAIEmbeddings_0",
|
||||||
"label": "OpenAI Embeddings",
|
"label": "OpenAI Embeddings",
|
||||||
"version": 1,
|
"version": 2,
|
||||||
"name": "openAIEmbeddings",
|
"name": "openAIEmbeddings",
|
||||||
"type": "OpenAIEmbeddings",
|
"type": "OpenAIEmbeddings",
|
||||||
"baseClasses": ["OpenAIEmbeddings", "Embeddings"],
|
"baseClasses": ["OpenAIEmbeddings", "Embeddings"],
|
||||||
@@ -295,6 +295,28 @@
|
|||||||
"credentialNames": ["openAIApi"],
|
"credentialNames": ["openAIApi"],
|
||||||
"id": "openAIEmbeddings_0-input-credential-credential"
|
"id": "openAIEmbeddings_0-input-credential-credential"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "Model Name",
|
||||||
|
"name": "modelName",
|
||||||
|
"type": "options",
|
||||||
|
"options": [
|
||||||
|
{
|
||||||
|
"label": "text-embedding-3-large",
|
||||||
|
"name": "text-embedding-3-large"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "text-embedding-3-small",
|
||||||
|
"name": "text-embedding-3-small"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "text-embedding-ada-002",
|
||||||
|
"name": "text-embedding-ada-002"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"default": "text-embedding-ada-002",
|
||||||
|
"optional": true,
|
||||||
|
"id": "openAIEmbeddings_0-input-modelName-options"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "Strip New Lines",
|
"label": "Strip New Lines",
|
||||||
"name": "stripNewLines",
|
"name": "stripNewLines",
|
||||||
@@ -333,7 +355,8 @@
|
|||||||
"stripNewLines": "",
|
"stripNewLines": "",
|
||||||
"batchSize": "",
|
"batchSize": "",
|
||||||
"timeout": "",
|
"timeout": "",
|
||||||
"basepath": ""
|
"basepath": "",
|
||||||
|
"modelName": "text-embedding-ada-002"
|
||||||
},
|
},
|
||||||
"outputAnchors": [
|
"outputAnchors": [
|
||||||
{
|
{
|
||||||
@@ -365,7 +388,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "chatOpenAI_0",
|
"id": "chatOpenAI_0",
|
||||||
"label": "ChatOpenAI",
|
"label": "ChatOpenAI",
|
||||||
"version": 2,
|
"version": 3,
|
||||||
"name": "chatOpenAI",
|
"name": "chatOpenAI",
|
||||||
"type": "ChatOpenAI",
|
"type": "ChatOpenAI",
|
||||||
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
||||||
@@ -388,6 +411,14 @@
|
|||||||
"label": "gpt-4",
|
"label": "gpt-4",
|
||||||
"name": "gpt-4"
|
"name": "gpt-4"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-turbo-preview",
|
||||||
|
"name": "gpt-4-turbo-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-0125-preview",
|
||||||
|
"name": "gpt-4-0125-preview"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-4-1106-preview",
|
"label": "gpt-4-1106-preview",
|
||||||
"name": "gpt-4-1106-preview"
|
"name": "gpt-4-1106-preview"
|
||||||
@@ -555,7 +586,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "pinecone_0",
|
"id": "pinecone_0",
|
||||||
"label": "Pinecone",
|
"label": "Pinecone",
|
||||||
"version": 1,
|
"version": 2,
|
||||||
"name": "pinecone",
|
"name": "pinecone",
|
||||||
"type": "Pinecone",
|
"type": "Pinecone",
|
||||||
"baseClasses": ["Pinecone", "VectorStoreRetriever", "BaseRetriever"],
|
"baseClasses": ["Pinecone", "VectorStoreRetriever", "BaseRetriever"],
|
||||||
|
|||||||
@@ -271,7 +271,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "openAIEmbeddings_1",
|
"id": "openAIEmbeddings_1",
|
||||||
"label": "OpenAI Embeddings",
|
"label": "OpenAI Embeddings",
|
||||||
"version": 1,
|
"version": 2,
|
||||||
"name": "openAIEmbeddings",
|
"name": "openAIEmbeddings",
|
||||||
"type": "OpenAIEmbeddings",
|
"type": "OpenAIEmbeddings",
|
||||||
"baseClasses": ["OpenAIEmbeddings", "Embeddings"],
|
"baseClasses": ["OpenAIEmbeddings", "Embeddings"],
|
||||||
@@ -285,6 +285,28 @@
|
|||||||
"credentialNames": ["openAIApi"],
|
"credentialNames": ["openAIApi"],
|
||||||
"id": "openAIEmbeddings_1-input-credential-credential"
|
"id": "openAIEmbeddings_1-input-credential-credential"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "Model Name",
|
||||||
|
"name": "modelName",
|
||||||
|
"type": "options",
|
||||||
|
"options": [
|
||||||
|
{
|
||||||
|
"label": "text-embedding-3-large",
|
||||||
|
"name": "text-embedding-3-large"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "text-embedding-3-small",
|
||||||
|
"name": "text-embedding-3-small"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "text-embedding-ada-002",
|
||||||
|
"name": "text-embedding-ada-002"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"default": "text-embedding-ada-002",
|
||||||
|
"optional": true,
|
||||||
|
"id": "openAIEmbeddings_1-input-modelName-options"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "Strip New Lines",
|
"label": "Strip New Lines",
|
||||||
"name": "stripNewLines",
|
"name": "stripNewLines",
|
||||||
@@ -323,7 +345,8 @@
|
|||||||
"stripNewLines": "",
|
"stripNewLines": "",
|
||||||
"batchSize": "",
|
"batchSize": "",
|
||||||
"timeout": "",
|
"timeout": "",
|
||||||
"basepath": ""
|
"basepath": "",
|
||||||
|
"modelName": "text-embedding-ada-002"
|
||||||
},
|
},
|
||||||
"outputAnchors": [
|
"outputAnchors": [
|
||||||
{
|
{
|
||||||
@@ -355,7 +378,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "openAIEmbeddings_2",
|
"id": "openAIEmbeddings_2",
|
||||||
"label": "OpenAI Embeddings",
|
"label": "OpenAI Embeddings",
|
||||||
"version": 1,
|
"version": 2,
|
||||||
"name": "openAIEmbeddings",
|
"name": "openAIEmbeddings",
|
||||||
"type": "OpenAIEmbeddings",
|
"type": "OpenAIEmbeddings",
|
||||||
"baseClasses": ["OpenAIEmbeddings", "Embeddings"],
|
"baseClasses": ["OpenAIEmbeddings", "Embeddings"],
|
||||||
@@ -369,6 +392,28 @@
|
|||||||
"credentialNames": ["openAIApi"],
|
"credentialNames": ["openAIApi"],
|
||||||
"id": "openAIEmbeddings_2-input-credential-credential"
|
"id": "openAIEmbeddings_2-input-credential-credential"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "Model Name",
|
||||||
|
"name": "modelName",
|
||||||
|
"type": "options",
|
||||||
|
"options": [
|
||||||
|
{
|
||||||
|
"label": "text-embedding-3-large",
|
||||||
|
"name": "text-embedding-3-large"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "text-embedding-3-small",
|
||||||
|
"name": "text-embedding-3-small"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "text-embedding-ada-002",
|
||||||
|
"name": "text-embedding-ada-002"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"default": "text-embedding-ada-002",
|
||||||
|
"optional": true,
|
||||||
|
"id": "openAIEmbeddings_2-input-modelName-options"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "Strip New Lines",
|
"label": "Strip New Lines",
|
||||||
"name": "stripNewLines",
|
"name": "stripNewLines",
|
||||||
@@ -407,7 +452,8 @@
|
|||||||
"stripNewLines": "",
|
"stripNewLines": "",
|
||||||
"batchSize": "",
|
"batchSize": "",
|
||||||
"timeout": "",
|
"timeout": "",
|
||||||
"basepath": ""
|
"basepath": "",
|
||||||
|
"modelName": "text-embedding-ada-002"
|
||||||
},
|
},
|
||||||
"outputAnchors": [
|
"outputAnchors": [
|
||||||
{
|
{
|
||||||
@@ -439,7 +485,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "chatOpenAI_0",
|
"id": "chatOpenAI_0",
|
||||||
"label": "ChatOpenAI",
|
"label": "ChatOpenAI",
|
||||||
"version": 2,
|
"version": 3,
|
||||||
"name": "chatOpenAI",
|
"name": "chatOpenAI",
|
||||||
"type": "ChatOpenAI",
|
"type": "ChatOpenAI",
|
||||||
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
||||||
@@ -462,6 +508,14 @@
|
|||||||
"label": "gpt-4",
|
"label": "gpt-4",
|
||||||
"name": "gpt-4"
|
"name": "gpt-4"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-turbo-preview",
|
||||||
|
"name": "gpt-4-turbo-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-0125-preview",
|
||||||
|
"name": "gpt-4-0125-preview"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-4-1106-preview",
|
"label": "gpt-4-1106-preview",
|
||||||
"name": "gpt-4-1106-preview"
|
"name": "gpt-4-1106-preview"
|
||||||
@@ -949,7 +1003,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "chatOpenAI_1",
|
"id": "chatOpenAI_1",
|
||||||
"label": "ChatOpenAI",
|
"label": "ChatOpenAI",
|
||||||
"version": 2,
|
"version": 3,
|
||||||
"name": "chatOpenAI",
|
"name": "chatOpenAI",
|
||||||
"type": "ChatOpenAI",
|
"type": "ChatOpenAI",
|
||||||
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
||||||
@@ -972,6 +1026,14 @@
|
|||||||
"label": "gpt-4",
|
"label": "gpt-4",
|
||||||
"name": "gpt-4"
|
"name": "gpt-4"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-turbo-preview",
|
||||||
|
"name": "gpt-4-turbo-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-0125-preview",
|
||||||
|
"name": "gpt-4-0125-preview"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-4-1106-preview",
|
"label": "gpt-4-1106-preview",
|
||||||
"name": "gpt-4-1106-preview"
|
"name": "gpt-4-1106-preview"
|
||||||
@@ -1139,7 +1201,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "chatOpenAI_2",
|
"id": "chatOpenAI_2",
|
||||||
"label": "ChatOpenAI",
|
"label": "ChatOpenAI",
|
||||||
"version": 2,
|
"version": 3,
|
||||||
"name": "chatOpenAI",
|
"name": "chatOpenAI",
|
||||||
"type": "ChatOpenAI",
|
"type": "ChatOpenAI",
|
||||||
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
||||||
@@ -1162,6 +1224,14 @@
|
|||||||
"label": "gpt-4",
|
"label": "gpt-4",
|
||||||
"name": "gpt-4"
|
"name": "gpt-4"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-turbo-preview",
|
||||||
|
"name": "gpt-4-turbo-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-0125-preview",
|
||||||
|
"name": "gpt-4-0125-preview"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-4-1106-preview",
|
"label": "gpt-4-1106-preview",
|
||||||
"name": "gpt-4-1106-preview"
|
"name": "gpt-4-1106-preview"
|
||||||
|
|||||||
@@ -279,7 +279,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "chatOpenAI_0",
|
"id": "chatOpenAI_0",
|
||||||
"label": "ChatOpenAI",
|
"label": "ChatOpenAI",
|
||||||
"version": 2,
|
"version": 3,
|
||||||
"name": "chatOpenAI",
|
"name": "chatOpenAI",
|
||||||
"type": "ChatOpenAI",
|
"type": "ChatOpenAI",
|
||||||
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel"],
|
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel"],
|
||||||
@@ -302,6 +302,22 @@
|
|||||||
"label": "gpt-4",
|
"label": "gpt-4",
|
||||||
"name": "gpt-4"
|
"name": "gpt-4"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-turbo-preview",
|
||||||
|
"name": "gpt-4-turbo-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-0125-preview",
|
||||||
|
"name": "gpt-4-0125-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-1106-preview",
|
||||||
|
"name": "gpt-4-1106-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-vision-preview",
|
||||||
|
"name": "gpt-4-vision-preview"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-4-0613",
|
"label": "gpt-4-0613",
|
||||||
"name": "gpt-4-0613"
|
"name": "gpt-4-0613"
|
||||||
@@ -318,6 +334,10 @@
|
|||||||
"label": "gpt-3.5-turbo",
|
"label": "gpt-3.5-turbo",
|
||||||
"name": "gpt-3.5-turbo"
|
"name": "gpt-3.5-turbo"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-3.5-turbo-1106",
|
||||||
|
"name": "gpt-3.5-turbo-1106"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-3.5-turbo-0613",
|
"label": "gpt-3.5-turbo-0613",
|
||||||
"name": "gpt-3.5-turbo-0613"
|
"name": "gpt-3.5-turbo-0613"
|
||||||
|
|||||||
@@ -264,13 +264,23 @@
|
|||||||
"type": "BaseLLMOutputParser",
|
"type": "BaseLLMOutputParser",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"id": "llmChain_2-input-outputParser-BaseLLMOutputParser"
|
"id": "llmChain_2-input-outputParser-BaseLLMOutputParser"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "Input Moderation",
|
||||||
|
"description": "Detect text that could generate harmful output and prevent it from being sent to the language model",
|
||||||
|
"name": "inputModeration",
|
||||||
|
"type": "Moderation",
|
||||||
|
"optional": true,
|
||||||
|
"list": true,
|
||||||
|
"id": "llmChain_2-input-inputModeration-Moderation"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"model": "{{chatOpenAI_0.data.instance}}",
|
"model": "{{chatOpenAI_0.data.instance}}",
|
||||||
"prompt": "{{promptTemplate_0.data.instance}}",
|
"prompt": "{{promptTemplate_0.data.instance}}",
|
||||||
"outputParser": "",
|
"outputParser": "",
|
||||||
"chainName": "RephraseQuestion"
|
"chainName": "RephraseQuestion",
|
||||||
|
"inputModeration": ""
|
||||||
},
|
},
|
||||||
"outputAnchors": [
|
"outputAnchors": [
|
||||||
{
|
{
|
||||||
@@ -353,13 +363,23 @@
|
|||||||
"type": "BaseLLMOutputParser",
|
"type": "BaseLLMOutputParser",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"id": "llmChain_1-input-outputParser-BaseLLMOutputParser"
|
"id": "llmChain_1-input-outputParser-BaseLLMOutputParser"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "Input Moderation",
|
||||||
|
"description": "Detect text that could generate harmful output and prevent it from being sent to the language model",
|
||||||
|
"name": "inputModeration",
|
||||||
|
"type": "Moderation",
|
||||||
|
"optional": true,
|
||||||
|
"list": true,
|
||||||
|
"id": "llmChain_1-input-inputModeration-Moderation"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"model": "{{chatOpenAI_1.data.instance}}",
|
"model": "{{chatOpenAI_1.data.instance}}",
|
||||||
"prompt": "{{chatPromptTemplate_0.data.instance}}",
|
"prompt": "{{chatPromptTemplate_0.data.instance}}",
|
||||||
"outputParser": "",
|
"outputParser": "",
|
||||||
"chainName": "FinalResponse"
|
"chainName": "FinalResponse",
|
||||||
|
"inputModeration": ""
|
||||||
},
|
},
|
||||||
"outputAnchors": [
|
"outputAnchors": [
|
||||||
{
|
{
|
||||||
@@ -407,7 +427,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "chatOpenAI_0",
|
"id": "chatOpenAI_0",
|
||||||
"label": "ChatOpenAI",
|
"label": "ChatOpenAI",
|
||||||
"version": 2,
|
"version": 3,
|
||||||
"name": "chatOpenAI",
|
"name": "chatOpenAI",
|
||||||
"type": "ChatOpenAI",
|
"type": "ChatOpenAI",
|
||||||
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
||||||
@@ -430,6 +450,14 @@
|
|||||||
"label": "gpt-4",
|
"label": "gpt-4",
|
||||||
"name": "gpt-4"
|
"name": "gpt-4"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-turbo-preview",
|
||||||
|
"name": "gpt-4-turbo-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-0125-preview",
|
||||||
|
"name": "gpt-4-0125-preview"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-4-1106-preview",
|
"label": "gpt-4-1106-preview",
|
||||||
"name": "gpt-4-1106-preview"
|
"name": "gpt-4-1106-preview"
|
||||||
@@ -597,7 +625,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "chatOpenAI_1",
|
"id": "chatOpenAI_1",
|
||||||
"label": "ChatOpenAI",
|
"label": "ChatOpenAI",
|
||||||
"version": 2,
|
"version": 3,
|
||||||
"name": "chatOpenAI",
|
"name": "chatOpenAI",
|
||||||
"type": "ChatOpenAI",
|
"type": "ChatOpenAI",
|
||||||
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
||||||
@@ -620,6 +648,14 @@
|
|||||||
"label": "gpt-4",
|
"label": "gpt-4",
|
||||||
"name": "gpt-4"
|
"name": "gpt-4"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-turbo-preview",
|
||||||
|
"name": "gpt-4-turbo-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-0125-preview",
|
||||||
|
"name": "gpt-4-0125-preview"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-4-1106-preview",
|
"label": "gpt-4-1106-preview",
|
||||||
"name": "gpt-4-1106-preview"
|
"name": "gpt-4-1106-preview"
|
||||||
@@ -934,7 +970,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "openAIEmbeddings_0",
|
"id": "openAIEmbeddings_0",
|
||||||
"label": "OpenAI Embeddings",
|
"label": "OpenAI Embeddings",
|
||||||
"version": 1,
|
"version": 2,
|
||||||
"name": "openAIEmbeddings",
|
"name": "openAIEmbeddings",
|
||||||
"type": "OpenAIEmbeddings",
|
"type": "OpenAIEmbeddings",
|
||||||
"baseClasses": ["OpenAIEmbeddings", "Embeddings"],
|
"baseClasses": ["OpenAIEmbeddings", "Embeddings"],
|
||||||
@@ -948,6 +984,28 @@
|
|||||||
"credentialNames": ["openAIApi"],
|
"credentialNames": ["openAIApi"],
|
||||||
"id": "openAIEmbeddings_0-input-credential-credential"
|
"id": "openAIEmbeddings_0-input-credential-credential"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "Model Name",
|
||||||
|
"name": "modelName",
|
||||||
|
"type": "options",
|
||||||
|
"options": [
|
||||||
|
{
|
||||||
|
"label": "text-embedding-3-large",
|
||||||
|
"name": "text-embedding-3-large"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "text-embedding-3-small",
|
||||||
|
"name": "text-embedding-3-small"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "text-embedding-ada-002",
|
||||||
|
"name": "text-embedding-ada-002"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"default": "text-embedding-ada-002",
|
||||||
|
"optional": true,
|
||||||
|
"id": "openAIEmbeddings_0-input-modelName-options"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "Strip New Lines",
|
"label": "Strip New Lines",
|
||||||
"name": "stripNewLines",
|
"name": "stripNewLines",
|
||||||
@@ -986,7 +1044,8 @@
|
|||||||
"stripNewLines": "",
|
"stripNewLines": "",
|
||||||
"batchSize": "",
|
"batchSize": "",
|
||||||
"timeout": "",
|
"timeout": "",
|
||||||
"basepath": ""
|
"basepath": "",
|
||||||
|
"modelName": "text-embedding-ada-002"
|
||||||
},
|
},
|
||||||
"outputAnchors": [
|
"outputAnchors": [
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -488,13 +488,23 @@
|
|||||||
"type": "BaseLLMOutputParser",
|
"type": "BaseLLMOutputParser",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"id": "llmChain_0-input-outputParser-BaseLLMOutputParser"
|
"id": "llmChain_0-input-outputParser-BaseLLMOutputParser"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "Input Moderation",
|
||||||
|
"description": "Detect text that could generate harmful output and prevent it from being sent to the language model",
|
||||||
|
"name": "inputModeration",
|
||||||
|
"type": "Moderation",
|
||||||
|
"optional": true,
|
||||||
|
"list": true,
|
||||||
|
"id": "llmChain_0-input-inputModeration-Moderation"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"model": "{{openAI_1.data.instance}}",
|
"model": "{{openAI_1.data.instance}}",
|
||||||
"prompt": "{{promptTemplate_0.data.instance}}",
|
"prompt": "{{promptTemplate_0.data.instance}}",
|
||||||
"outputParser": "",
|
"outputParser": "",
|
||||||
"chainName": "FirstChain"
|
"chainName": "FirstChain",
|
||||||
|
"inputModeration": ""
|
||||||
},
|
},
|
||||||
"outputAnchors": [
|
"outputAnchors": [
|
||||||
{
|
{
|
||||||
@@ -577,13 +587,23 @@
|
|||||||
"type": "BaseLLMOutputParser",
|
"type": "BaseLLMOutputParser",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"id": "llmChain_1-input-outputParser-BaseLLMOutputParser"
|
"id": "llmChain_1-input-outputParser-BaseLLMOutputParser"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "Input Moderation",
|
||||||
|
"description": "Detect text that could generate harmful output and prevent it from being sent to the language model",
|
||||||
|
"name": "inputModeration",
|
||||||
|
"type": "Moderation",
|
||||||
|
"optional": true,
|
||||||
|
"list": true,
|
||||||
|
"id": "llmChain_1-input-inputModeration-Moderation"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"model": "{{openAI_2.data.instance}}",
|
"model": "{{openAI_2.data.instance}}",
|
||||||
"prompt": "{{promptTemplate_1.data.instance}}",
|
"prompt": "{{promptTemplate_1.data.instance}}",
|
||||||
"outputParser": "",
|
"outputParser": "",
|
||||||
"chainName": "LastChain"
|
"chainName": "LastChain",
|
||||||
|
"inputModeration": ""
|
||||||
},
|
},
|
||||||
"outputAnchors": [
|
"outputAnchors": [
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -99,7 +99,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "chatOpenAI_0",
|
"id": "chatOpenAI_0",
|
||||||
"label": "ChatOpenAI",
|
"label": "ChatOpenAI",
|
||||||
"version": 2,
|
"version": 3,
|
||||||
"name": "chatOpenAI",
|
"name": "chatOpenAI",
|
||||||
"type": "ChatOpenAI",
|
"type": "ChatOpenAI",
|
||||||
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
||||||
@@ -122,6 +122,14 @@
|
|||||||
"label": "gpt-4",
|
"label": "gpt-4",
|
||||||
"name": "gpt-4"
|
"name": "gpt-4"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-turbo-preview",
|
||||||
|
"name": "gpt-4-turbo-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-0125-preview",
|
||||||
|
"name": "gpt-4-0125-preview"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-4-1106-preview",
|
"label": "gpt-4-1106-preview",
|
||||||
"name": "gpt-4-1106-preview"
|
"name": "gpt-4-1106-preview"
|
||||||
|
|||||||
@@ -227,13 +227,23 @@
|
|||||||
"type": "BaseLLMOutputParser",
|
"type": "BaseLLMOutputParser",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"id": "llmChain_0-input-outputParser-BaseLLMOutputParser"
|
"id": "llmChain_0-input-outputParser-BaseLLMOutputParser"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "Input Moderation",
|
||||||
|
"description": "Detect text that could generate harmful output and prevent it from being sent to the language model",
|
||||||
|
"name": "inputModeration",
|
||||||
|
"type": "Moderation",
|
||||||
|
"optional": true,
|
||||||
|
"list": true,
|
||||||
|
"id": "llmChain_0-input-inputModeration-Moderation"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"model": "{{replicate_0.data.instance}}",
|
"model": "{{replicate_0.data.instance}}",
|
||||||
"prompt": "{{promptTemplate_0.data.instance}}",
|
"prompt": "{{promptTemplate_0.data.instance}}",
|
||||||
"outputParser": "",
|
"outputParser": "",
|
||||||
"chainName": ""
|
"chainName": "",
|
||||||
|
"inputModeration": ""
|
||||||
},
|
},
|
||||||
"outputAnchors": [
|
"outputAnchors": [
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -13,7 +13,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "chatOpenAI_0",
|
"id": "chatOpenAI_0",
|
||||||
"label": "ChatOpenAI",
|
"label": "ChatOpenAI",
|
||||||
"version": 2,
|
"version": 3,
|
||||||
"name": "chatOpenAI",
|
"name": "chatOpenAI",
|
||||||
"type": "ChatOpenAI",
|
"type": "ChatOpenAI",
|
||||||
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel"],
|
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel"],
|
||||||
@@ -36,6 +36,22 @@
|
|||||||
"label": "gpt-4",
|
"label": "gpt-4",
|
||||||
"name": "gpt-4"
|
"name": "gpt-4"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-turbo-preview",
|
||||||
|
"name": "gpt-4-turbo-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-0125-preview",
|
||||||
|
"name": "gpt-4-0125-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-1106-preview",
|
||||||
|
"name": "gpt-4-1106-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-vision-preview",
|
||||||
|
"name": "gpt-4-vision-preview"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-4-0613",
|
"label": "gpt-4-0613",
|
||||||
"name": "gpt-4-0613"
|
"name": "gpt-4-0613"
|
||||||
@@ -52,6 +68,10 @@
|
|||||||
"label": "gpt-3.5-turbo",
|
"label": "gpt-3.5-turbo",
|
||||||
"name": "gpt-3.5-turbo"
|
"name": "gpt-3.5-turbo"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-3.5-turbo-1106",
|
||||||
|
"name": "gpt-3.5-turbo-1106"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-3.5-turbo-0613",
|
"label": "gpt-3.5-turbo-0613",
|
||||||
"name": "gpt-3.5-turbo-0613"
|
"name": "gpt-3.5-turbo-0613"
|
||||||
|
|||||||
@@ -173,7 +173,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "chatOpenAI_0",
|
"id": "chatOpenAI_0",
|
||||||
"label": "ChatOpenAI",
|
"label": "ChatOpenAI",
|
||||||
"version": 2,
|
"version": 3,
|
||||||
"name": "chatOpenAI",
|
"name": "chatOpenAI",
|
||||||
"type": "ChatOpenAI",
|
"type": "ChatOpenAI",
|
||||||
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
||||||
@@ -196,6 +196,14 @@
|
|||||||
"label": "gpt-4",
|
"label": "gpt-4",
|
||||||
"name": "gpt-4"
|
"name": "gpt-4"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-turbo-preview",
|
||||||
|
"name": "gpt-4-turbo-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-0125-preview",
|
||||||
|
"name": "gpt-4-0125-preview"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-4-1106-preview",
|
"label": "gpt-4-1106-preview",
|
||||||
"name": "gpt-4-1106-preview"
|
"name": "gpt-4-1106-preview"
|
||||||
@@ -363,7 +371,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "chatOpenAI_1",
|
"id": "chatOpenAI_1",
|
||||||
"label": "ChatOpenAI",
|
"label": "ChatOpenAI",
|
||||||
"version": 2,
|
"version": 3,
|
||||||
"name": "chatOpenAI",
|
"name": "chatOpenAI",
|
||||||
"type": "ChatOpenAI",
|
"type": "ChatOpenAI",
|
||||||
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
||||||
@@ -386,6 +394,14 @@
|
|||||||
"label": "gpt-4",
|
"label": "gpt-4",
|
||||||
"name": "gpt-4"
|
"name": "gpt-4"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-turbo-preview",
|
||||||
|
"name": "gpt-4-turbo-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-0125-preview",
|
||||||
|
"name": "gpt-4-0125-preview"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-4-1106-preview",
|
"label": "gpt-4-1106-preview",
|
||||||
"name": "gpt-4-1106-preview"
|
"name": "gpt-4-1106-preview"
|
||||||
@@ -1279,7 +1295,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "chatOpenAI_2",
|
"id": "chatOpenAI_2",
|
||||||
"label": "ChatOpenAI",
|
"label": "ChatOpenAI",
|
||||||
"version": 2,
|
"version": 3,
|
||||||
"name": "chatOpenAI",
|
"name": "chatOpenAI",
|
||||||
"type": "ChatOpenAI",
|
"type": "ChatOpenAI",
|
||||||
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
||||||
@@ -1302,6 +1318,14 @@
|
|||||||
"label": "gpt-4",
|
"label": "gpt-4",
|
||||||
"name": "gpt-4"
|
"name": "gpt-4"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-turbo-preview",
|
||||||
|
"name": "gpt-4-turbo-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-0125-preview",
|
||||||
|
"name": "gpt-4-0125-preview"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-4-1106-preview",
|
"label": "gpt-4-1106-preview",
|
||||||
"name": "gpt-4-1106-preview"
|
"name": "gpt-4-1106-preview"
|
||||||
|
|||||||
@@ -14,7 +14,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "chatOpenAI_0",
|
"id": "chatOpenAI_0",
|
||||||
"label": "ChatOpenAI",
|
"label": "ChatOpenAI",
|
||||||
"version": 2,
|
"version": 3,
|
||||||
"name": "chatOpenAI",
|
"name": "chatOpenAI",
|
||||||
"type": "ChatOpenAI",
|
"type": "ChatOpenAI",
|
||||||
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
||||||
@@ -37,6 +37,14 @@
|
|||||||
"label": "gpt-4",
|
"label": "gpt-4",
|
||||||
"name": "gpt-4"
|
"name": "gpt-4"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-turbo-preview",
|
||||||
|
"name": "gpt-4-turbo-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-0125-preview",
|
||||||
|
"name": "gpt-4-0125-preview"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-4-1106-preview",
|
"label": "gpt-4-1106-preview",
|
||||||
"name": "gpt-4-1106-preview"
|
"name": "gpt-4-1106-preview"
|
||||||
|
|||||||
@@ -268,13 +268,23 @@
|
|||||||
"type": "BaseLLMOutputParser",
|
"type": "BaseLLMOutputParser",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"id": "llmChain_0-input-outputParser-BaseLLMOutputParser"
|
"id": "llmChain_0-input-outputParser-BaseLLMOutputParser"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "Input Moderation",
|
||||||
|
"description": "Detect text that could generate harmful output and prevent it from being sent to the language model",
|
||||||
|
"name": "inputModeration",
|
||||||
|
"type": "Moderation",
|
||||||
|
"optional": true,
|
||||||
|
"list": true,
|
||||||
|
"id": "llmChain_0-input-inputModeration-Moderation"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"model": "{{openAI_0.data.instance}}",
|
"model": "{{openAI_0.data.instance}}",
|
||||||
"prompt": "{{promptTemplate_0.data.instance}}",
|
"prompt": "{{promptTemplate_0.data.instance}}",
|
||||||
"outputParser": "",
|
"outputParser": "",
|
||||||
"chainName": ""
|
"chainName": "",
|
||||||
|
"inputModeration": ""
|
||||||
},
|
},
|
||||||
"outputAnchors": [
|
"outputAnchors": [
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -14,7 +14,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "chatOpenAI_0",
|
"id": "chatOpenAI_0",
|
||||||
"label": "ChatOpenAI",
|
"label": "ChatOpenAI",
|
||||||
"version": 2,
|
"version": 3,
|
||||||
"name": "chatOpenAI",
|
"name": "chatOpenAI",
|
||||||
"type": "ChatOpenAI",
|
"type": "ChatOpenAI",
|
||||||
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
||||||
@@ -37,6 +37,22 @@
|
|||||||
"label": "gpt-4",
|
"label": "gpt-4",
|
||||||
"name": "gpt-4"
|
"name": "gpt-4"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-turbo-preview",
|
||||||
|
"name": "gpt-4-turbo-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-0125-preview",
|
||||||
|
"name": "gpt-4-0125-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-1106-preview",
|
||||||
|
"name": "gpt-4-1106-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-vision-preview",
|
||||||
|
"name": "gpt-4-vision-preview"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-4-0613",
|
"label": "gpt-4-0613",
|
||||||
"name": "gpt-4-0613"
|
"name": "gpt-4-0613"
|
||||||
@@ -53,6 +69,10 @@
|
|||||||
"label": "gpt-3.5-turbo",
|
"label": "gpt-3.5-turbo",
|
||||||
"name": "gpt-3.5-turbo"
|
"name": "gpt-3.5-turbo"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-3.5-turbo-1106",
|
||||||
|
"name": "gpt-3.5-turbo-1106"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-3.5-turbo-0613",
|
"label": "gpt-3.5-turbo-0613",
|
||||||
"name": "gpt-3.5-turbo-0613"
|
"name": "gpt-3.5-turbo-0613"
|
||||||
@@ -227,13 +247,23 @@
|
|||||||
"type": "BaseLLMOutputParser",
|
"type": "BaseLLMOutputParser",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"id": "llmChain_0-input-outputParser-BaseLLMOutputParser"
|
"id": "llmChain_0-input-outputParser-BaseLLMOutputParser"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "Input Moderation",
|
||||||
|
"description": "Detect text that could generate harmful output and prevent it from being sent to the language model",
|
||||||
|
"name": "inputModeration",
|
||||||
|
"type": "Moderation",
|
||||||
|
"optional": true,
|
||||||
|
"list": true,
|
||||||
|
"id": "llmChain_0-input-inputModeration-Moderation"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"model": "{{chatOpenAI_0.data.instance}}",
|
"model": "{{chatOpenAI_0.data.instance}}",
|
||||||
"prompt": "{{chatPromptTemplate_0.data.instance}}",
|
"prompt": "{{chatPromptTemplate_0.data.instance}}",
|
||||||
"outputParser": "{{structuredOutputParser_0.data.instance}}",
|
"outputParser": "{{structuredOutputParser_0.data.instance}}",
|
||||||
"chainName": ""
|
"chainName": "",
|
||||||
|
"inputModeration": ""
|
||||||
},
|
},
|
||||||
"outputAnchors": [
|
"outputAnchors": [
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -82,7 +82,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "chatOpenAI_0",
|
"id": "chatOpenAI_0",
|
||||||
"label": "ChatOpenAI",
|
"label": "ChatOpenAI",
|
||||||
"version": 2,
|
"version": 3,
|
||||||
"name": "chatOpenAI",
|
"name": "chatOpenAI",
|
||||||
"type": "ChatOpenAI",
|
"type": "ChatOpenAI",
|
||||||
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel"],
|
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel"],
|
||||||
@@ -105,6 +105,22 @@
|
|||||||
"label": "gpt-4",
|
"label": "gpt-4",
|
||||||
"name": "gpt-4"
|
"name": "gpt-4"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-turbo-preview",
|
||||||
|
"name": "gpt-4-turbo-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-0125-preview",
|
||||||
|
"name": "gpt-4-0125-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-1106-preview",
|
||||||
|
"name": "gpt-4-1106-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-vision-preview",
|
||||||
|
"name": "gpt-4-vision-preview"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-4-0613",
|
"label": "gpt-4-0613",
|
||||||
"name": "gpt-4-0613"
|
"name": "gpt-4-0613"
|
||||||
@@ -121,6 +137,10 @@
|
|||||||
"label": "gpt-3.5-turbo",
|
"label": "gpt-3.5-turbo",
|
||||||
"name": "gpt-3.5-turbo"
|
"name": "gpt-3.5-turbo"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-3.5-turbo-1106",
|
||||||
|
"name": "gpt-3.5-turbo-1106"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-3.5-turbo-0613",
|
"label": "gpt-3.5-turbo-0613",
|
||||||
"name": "gpt-3.5-turbo-0613"
|
"name": "gpt-3.5-turbo-0613"
|
||||||
@@ -288,13 +308,23 @@
|
|||||||
"type": "BaseLLMOutputParser",
|
"type": "BaseLLMOutputParser",
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"id": "llmChain_0-input-outputParser-BaseLLMOutputParser"
|
"id": "llmChain_0-input-outputParser-BaseLLMOutputParser"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "Input Moderation",
|
||||||
|
"description": "Detect text that could generate harmful output and prevent it from being sent to the language model",
|
||||||
|
"name": "inputModeration",
|
||||||
|
"type": "Moderation",
|
||||||
|
"optional": true,
|
||||||
|
"list": true,
|
||||||
|
"id": "llmChain_0-input-inputModeration-Moderation"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"model": "{{chatOpenAI_0.data.instance}}",
|
"model": "{{chatOpenAI_0.data.instance}}",
|
||||||
"prompt": "{{chatPromptTemplate_0.data.instance}}",
|
"prompt": "{{chatPromptTemplate_0.data.instance}}",
|
||||||
"outputParser": "",
|
"outputParser": "",
|
||||||
"chainName": "Language Translation"
|
"chainName": "Language Translation",
|
||||||
|
"inputModeration": ""
|
||||||
},
|
},
|
||||||
"outputAnchors": [
|
"outputAnchors": [
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -125,7 +125,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "chatOpenAI_0",
|
"id": "chatOpenAI_0",
|
||||||
"label": "ChatOpenAI",
|
"label": "ChatOpenAI",
|
||||||
"version": 2,
|
"version": 3,
|
||||||
"name": "chatOpenAI",
|
"name": "chatOpenAI",
|
||||||
"type": "ChatOpenAI",
|
"type": "ChatOpenAI",
|
||||||
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel"],
|
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel"],
|
||||||
@@ -148,6 +148,22 @@
|
|||||||
"label": "gpt-4",
|
"label": "gpt-4",
|
||||||
"name": "gpt-4"
|
"name": "gpt-4"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-turbo-preview",
|
||||||
|
"name": "gpt-4-turbo-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-0125-preview",
|
||||||
|
"name": "gpt-4-0125-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-1106-preview",
|
||||||
|
"name": "gpt-4-1106-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-vision-preview",
|
||||||
|
"name": "gpt-4-vision-preview"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-4-0613",
|
"label": "gpt-4-0613",
|
||||||
"name": "gpt-4-0613"
|
"name": "gpt-4-0613"
|
||||||
@@ -164,6 +180,10 @@
|
|||||||
"label": "gpt-3.5-turbo",
|
"label": "gpt-3.5-turbo",
|
||||||
"name": "gpt-3.5-turbo"
|
"name": "gpt-3.5-turbo"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-3.5-turbo-1106",
|
||||||
|
"name": "gpt-3.5-turbo-1106"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-3.5-turbo-0613",
|
"label": "gpt-3.5-turbo-0613",
|
||||||
"name": "gpt-3.5-turbo-0613"
|
"name": "gpt-3.5-turbo-0613"
|
||||||
@@ -296,7 +316,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "openAIEmbeddings_0",
|
"id": "openAIEmbeddings_0",
|
||||||
"label": "OpenAI Embeddings",
|
"label": "OpenAI Embeddings",
|
||||||
"version": 1,
|
"version": 2,
|
||||||
"name": "openAIEmbeddings",
|
"name": "openAIEmbeddings",
|
||||||
"type": "OpenAIEmbeddings",
|
"type": "OpenAIEmbeddings",
|
||||||
"baseClasses": ["OpenAIEmbeddings", "Embeddings"],
|
"baseClasses": ["OpenAIEmbeddings", "Embeddings"],
|
||||||
@@ -310,6 +330,28 @@
|
|||||||
"credentialNames": ["openAIApi"],
|
"credentialNames": ["openAIApi"],
|
||||||
"id": "openAIEmbeddings_0-input-credential-credential"
|
"id": "openAIEmbeddings_0-input-credential-credential"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "Model Name",
|
||||||
|
"name": "modelName",
|
||||||
|
"type": "options",
|
||||||
|
"options": [
|
||||||
|
{
|
||||||
|
"label": "text-embedding-3-large",
|
||||||
|
"name": "text-embedding-3-large"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "text-embedding-3-small",
|
||||||
|
"name": "text-embedding-3-small"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "text-embedding-ada-002",
|
||||||
|
"name": "text-embedding-ada-002"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"default": "text-embedding-ada-002",
|
||||||
|
"optional": true,
|
||||||
|
"id": "openAIEmbeddings_0-input-modelName-options"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "Strip New Lines",
|
"label": "Strip New Lines",
|
||||||
"name": "stripNewLines",
|
"name": "stripNewLines",
|
||||||
@@ -348,7 +390,8 @@
|
|||||||
"stripNewLines": "",
|
"stripNewLines": "",
|
||||||
"batchSize": "",
|
"batchSize": "",
|
||||||
"timeout": "",
|
"timeout": "",
|
||||||
"basepath": ""
|
"basepath": "",
|
||||||
|
"modelName": "text-embedding-ada-002"
|
||||||
},
|
},
|
||||||
"outputAnchors": [
|
"outputAnchors": [
|
||||||
{
|
{
|
||||||
@@ -380,7 +423,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "chatOpenAI_1",
|
"id": "chatOpenAI_1",
|
||||||
"label": "ChatOpenAI",
|
"label": "ChatOpenAI",
|
||||||
"version": 2,
|
"version": 3,
|
||||||
"name": "chatOpenAI",
|
"name": "chatOpenAI",
|
||||||
"type": "ChatOpenAI",
|
"type": "ChatOpenAI",
|
||||||
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel"],
|
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel"],
|
||||||
@@ -403,6 +446,22 @@
|
|||||||
"label": "gpt-4",
|
"label": "gpt-4",
|
||||||
"name": "gpt-4"
|
"name": "gpt-4"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-turbo-preview",
|
||||||
|
"name": "gpt-4-turbo-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-0125-preview",
|
||||||
|
"name": "gpt-4-0125-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-1106-preview",
|
||||||
|
"name": "gpt-4-1106-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-vision-preview",
|
||||||
|
"name": "gpt-4-vision-preview"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-4-0613",
|
"label": "gpt-4-0613",
|
||||||
"name": "gpt-4-0613"
|
"name": "gpt-4-0613"
|
||||||
@@ -419,6 +478,10 @@
|
|||||||
"label": "gpt-3.5-turbo",
|
"label": "gpt-3.5-turbo",
|
||||||
"name": "gpt-3.5-turbo"
|
"name": "gpt-3.5-turbo"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-3.5-turbo-1106",
|
||||||
|
"name": "gpt-3.5-turbo-1106"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-3.5-turbo-0613",
|
"label": "gpt-3.5-turbo-0613",
|
||||||
"name": "gpt-3.5-turbo-0613"
|
"name": "gpt-3.5-turbo-0613"
|
||||||
|
|||||||
@@ -14,7 +14,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "openAIEmbeddings_0",
|
"id": "openAIEmbeddings_0",
|
||||||
"label": "OpenAI Embeddings",
|
"label": "OpenAI Embeddings",
|
||||||
"version": 1,
|
"version": 2,
|
||||||
"name": "openAIEmbeddings",
|
"name": "openAIEmbeddings",
|
||||||
"type": "OpenAIEmbeddings",
|
"type": "OpenAIEmbeddings",
|
||||||
"baseClasses": ["OpenAIEmbeddings", "Embeddings"],
|
"baseClasses": ["OpenAIEmbeddings", "Embeddings"],
|
||||||
@@ -28,6 +28,28 @@
|
|||||||
"credentialNames": ["openAIApi"],
|
"credentialNames": ["openAIApi"],
|
||||||
"id": "openAIEmbeddings_0-input-credential-credential"
|
"id": "openAIEmbeddings_0-input-credential-credential"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "Model Name",
|
||||||
|
"name": "modelName",
|
||||||
|
"type": "options",
|
||||||
|
"options": [
|
||||||
|
{
|
||||||
|
"label": "text-embedding-3-large",
|
||||||
|
"name": "text-embedding-3-large"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "text-embedding-3-small",
|
||||||
|
"name": "text-embedding-3-small"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "text-embedding-ada-002",
|
||||||
|
"name": "text-embedding-ada-002"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"default": "text-embedding-ada-002",
|
||||||
|
"optional": true,
|
||||||
|
"id": "openAIEmbeddings_0-input-modelName-options"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "Strip New Lines",
|
"label": "Strip New Lines",
|
||||||
"name": "stripNewLines",
|
"name": "stripNewLines",
|
||||||
@@ -66,7 +88,8 @@
|
|||||||
"stripNewLines": "",
|
"stripNewLines": "",
|
||||||
"batchSize": "",
|
"batchSize": "",
|
||||||
"timeout": "",
|
"timeout": "",
|
||||||
"basepath": ""
|
"basepath": "",
|
||||||
|
"modelName": "text-embedding-ada-002"
|
||||||
},
|
},
|
||||||
"outputAnchors": [
|
"outputAnchors": [
|
||||||
{
|
{
|
||||||
@@ -369,7 +392,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "chatOpenAI_0",
|
"id": "chatOpenAI_0",
|
||||||
"label": "ChatOpenAI",
|
"label": "ChatOpenAI",
|
||||||
"version": 2,
|
"version": 3,
|
||||||
"name": "chatOpenAI",
|
"name": "chatOpenAI",
|
||||||
"type": "ChatOpenAI",
|
"type": "ChatOpenAI",
|
||||||
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
"baseClasses": ["ChatOpenAI", "BaseChatModel", "BaseLanguageModel", "Runnable"],
|
||||||
@@ -392,6 +415,14 @@
|
|||||||
"label": "gpt-4",
|
"label": "gpt-4",
|
||||||
"name": "gpt-4"
|
"name": "gpt-4"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-turbo-preview",
|
||||||
|
"name": "gpt-4-turbo-preview"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"label": "gpt-4-0125-preview",
|
||||||
|
"name": "gpt-4-0125-preview"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"label": "gpt-4-1106-preview",
|
"label": "gpt-4-1106-preview",
|
||||||
"name": "gpt-4-1106-preview"
|
"name": "gpt-4-1106-preview"
|
||||||
@@ -638,7 +669,7 @@
|
|||||||
"data": {
|
"data": {
|
||||||
"id": "pinecone_0",
|
"id": "pinecone_0",
|
||||||
"label": "Pinecone",
|
"label": "Pinecone",
|
||||||
"version": 1,
|
"version": 3,
|
||||||
"name": "pinecone",
|
"name": "pinecone",
|
||||||
"type": "Pinecone",
|
"type": "Pinecone",
|
||||||
"baseClasses": ["Pinecone", "VectorStoreRetriever", "BaseRetriever"],
|
"baseClasses": ["Pinecone", "VectorStoreRetriever", "BaseRetriever"],
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "flowise",
|
"name": "flowise",
|
||||||
"version": "1.4.10",
|
"version": "1.4.11",
|
||||||
"description": "Flowiseai Server",
|
"description": "Flowiseai Server",
|
||||||
"main": "dist/index",
|
"main": "dist/index",
|
||||||
"types": "dist/index.d.ts",
|
"types": "dist/index.d.ts",
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
import 'reflect-metadata'
|
import 'reflect-metadata'
|
||||||
import path from 'path'
|
import path from 'path'
|
||||||
|
import * as fs from 'fs'
|
||||||
import { DataSource } from 'typeorm'
|
import { DataSource } from 'typeorm'
|
||||||
import { getUserHome } from './utils'
|
import { getUserHome } from './utils'
|
||||||
import { entities } from './database/entities'
|
import { entities } from './database/entities'
|
||||||
@@ -11,9 +12,13 @@ let appDataSource: DataSource
|
|||||||
|
|
||||||
export const init = async (): Promise<void> => {
|
export const init = async (): Promise<void> => {
|
||||||
let homePath
|
let homePath
|
||||||
|
let flowisePath = path.join(getUserHome(), '.flowise')
|
||||||
|
if (!fs.existsSync(flowisePath)) {
|
||||||
|
fs.mkdirSync(flowisePath)
|
||||||
|
}
|
||||||
switch (process.env.DATABASE_TYPE) {
|
switch (process.env.DATABASE_TYPE) {
|
||||||
case 'sqlite':
|
case 'sqlite':
|
||||||
homePath = process.env.DATABASE_PATH ?? path.join(getUserHome(), '.flowise')
|
homePath = process.env.DATABASE_PATH ?? flowisePath
|
||||||
appDataSource = new DataSource({
|
appDataSource = new DataSource({
|
||||||
type: 'sqlite',
|
type: 'sqlite',
|
||||||
database: path.resolve(homePath, 'database.sqlite'),
|
database: path.resolve(homePath, 'database.sqlite'),
|
||||||
@@ -54,7 +59,7 @@ export const init = async (): Promise<void> => {
|
|||||||
})
|
})
|
||||||
break
|
break
|
||||||
default:
|
default:
|
||||||
homePath = process.env.DATABASE_PATH ?? path.join(getUserHome(), '.flowise')
|
homePath = process.env.DATABASE_PATH ?? flowisePath
|
||||||
appDataSource = new DataSource({
|
appDataSource = new DataSource({
|
||||||
type: 'sqlite',
|
type: 'sqlite',
|
||||||
database: path.resolve(homePath, 'database.sqlite'),
|
database: path.resolve(homePath, 'database.sqlite'),
|
||||||
|
|||||||
@@ -59,7 +59,7 @@ import { Tool } from './database/entities/Tool'
|
|||||||
import { Assistant } from './database/entities/Assistant'
|
import { Assistant } from './database/entities/Assistant'
|
||||||
import { ChatflowPool } from './ChatflowPool'
|
import { ChatflowPool } from './ChatflowPool'
|
||||||
import { CachePool } from './CachePool'
|
import { CachePool } from './CachePool'
|
||||||
import { ICommonObject, IMessage, INodeOptionsValue, handleEscapeCharacters } from 'flowise-components'
|
import { ICommonObject, IMessage, INodeOptionsValue, handleEscapeCharacters, webCrawl, xmlScrape } from 'flowise-components'
|
||||||
import { createRateLimiter, getRateLimiter, initializeRateLimiter } from './utils/rateLimit'
|
import { createRateLimiter, getRateLimiter, initializeRateLimiter } from './utils/rateLimit'
|
||||||
import { addAPIKey, compareKeys, deleteAPIKey, getApiKey, getAPIKeys, updateAPIKey } from './utils/apiKey'
|
import { addAPIKey, compareKeys, deleteAPIKey, getApiKey, getAPIKeys, updateAPIKey } from './utils/apiKey'
|
||||||
import { sanitizeMiddleware } from './utils/XSS'
|
import { sanitizeMiddleware } from './utils/XSS'
|
||||||
@@ -465,11 +465,15 @@ export class App {
|
|||||||
const endingNodeData = endingNode.data
|
const endingNodeData = endingNode.data
|
||||||
if (!endingNodeData) return res.status(500).send(`Ending node ${endingNode.id} data not found`)
|
if (!endingNodeData) return res.status(500).send(`Ending node ${endingNode.id} data not found`)
|
||||||
|
|
||||||
if (endingNodeData && endingNodeData.category !== 'Chains' && endingNodeData.category !== 'Agents') {
|
const isEndingNode = endingNodeData?.outputs?.output === 'EndingNode'
|
||||||
return res.status(500).send(`Ending node must be either a Chain or Agent`)
|
|
||||||
|
if (!isEndingNode) {
|
||||||
|
if (endingNodeData && endingNodeData.category !== 'Chains' && endingNodeData.category !== 'Agents') {
|
||||||
|
return res.status(500).send(`Ending node must be either a Chain or Agent`)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
isStreaming = isFlowValidForStream(nodes, endingNodeData)
|
isStreaming = isEndingNode ? false : isFlowValidForStream(nodes, endingNodeData)
|
||||||
}
|
}
|
||||||
|
|
||||||
const obj = { isStreaming }
|
const obj = { isStreaming }
|
||||||
@@ -1117,6 +1121,19 @@ export class App {
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
|
// ----------------------------------------
|
||||||
|
// Scraper
|
||||||
|
// ----------------------------------------
|
||||||
|
|
||||||
|
this.app.get('/api/v1/fetch-links', async (req: Request, res: Response) => {
|
||||||
|
const url = decodeURIComponent(req.query.url as string)
|
||||||
|
const relativeLinksMethod = req.query.relativeLinksMethod as string
|
||||||
|
if (process.env.DEBUG === 'true') console.info(`Start ${relativeLinksMethod}`)
|
||||||
|
const links: string[] = relativeLinksMethod === 'webCrawl' ? await webCrawl(url, 0) : await xmlScrape(url, 0)
|
||||||
|
|
||||||
|
res.json({ status: 'OK', links })
|
||||||
|
})
|
||||||
|
|
||||||
// ----------------------------------------
|
// ----------------------------------------
|
||||||
// Upsert
|
// Upsert
|
||||||
// ----------------------------------------
|
// ----------------------------------------
|
||||||
@@ -1652,20 +1669,24 @@ export class App {
|
|||||||
const endingNodeData = endingNode.data
|
const endingNodeData = endingNode.data
|
||||||
if (!endingNodeData) return res.status(500).send(`Ending node ${endingNode.id} data not found`)
|
if (!endingNodeData) return res.status(500).send(`Ending node ${endingNode.id} data not found`)
|
||||||
|
|
||||||
if (endingNodeData && endingNodeData.category !== 'Chains' && endingNodeData.category !== 'Agents') {
|
const isEndingNode = endingNodeData?.outputs?.output === 'EndingNode'
|
||||||
return res.status(500).send(`Ending node must be either a Chain or Agent`)
|
|
||||||
}
|
|
||||||
|
|
||||||
if (
|
if (!isEndingNode) {
|
||||||
endingNodeData.outputs &&
|
if (endingNodeData && endingNodeData.category !== 'Chains' && endingNodeData.category !== 'Agents') {
|
||||||
Object.keys(endingNodeData.outputs).length &&
|
return res.status(500).send(`Ending node must be either a Chain or Agent`)
|
||||||
!Object.values(endingNodeData.outputs).includes(endingNodeData.name)
|
}
|
||||||
) {
|
|
||||||
return res
|
if (
|
||||||
.status(500)
|
endingNodeData.outputs &&
|
||||||
.send(
|
Object.keys(endingNodeData.outputs).length &&
|
||||||
`Output of ${endingNodeData.label} (${endingNodeData.id}) must be ${endingNodeData.label}, can't be an Output Prediction`
|
!Object.values(endingNodeData.outputs ?? {}).includes(endingNodeData.name)
|
||||||
)
|
) {
|
||||||
|
return res
|
||||||
|
.status(500)
|
||||||
|
.send(
|
||||||
|
`Output of ${endingNodeData.label} (${endingNodeData.id}) must be ${endingNodeData.label}, can't be an Output Prediction`
|
||||||
|
)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
isStreamValid = isFlowValidForStream(nodes, endingNodeData)
|
isStreamValid = isFlowValidForStream(nodes, endingNodeData)
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "flowise-ui",
|
"name": "flowise-ui",
|
||||||
"version": "1.4.7",
|
"version": "1.4.8",
|
||||||
"license": "SEE LICENSE IN LICENSE.md",
|
"license": "SEE LICENSE IN LICENSE.md",
|
||||||
"homepage": "https://flowiseai.com",
|
"homepage": "https://flowiseai.com",
|
||||||
"author": {
|
"author": {
|
||||||
|
|||||||
@@ -0,0 +1,8 @@
|
|||||||
|
import client from './client'
|
||||||
|
|
||||||
|
const fetchAllLinks = (url, relativeLinksMethod) =>
|
||||||
|
client.get(`/fetch-links?url=${encodeURIComponent(url)}&relativeLinksMethod=${relativeLinksMethod}`)
|
||||||
|
|
||||||
|
export default {
|
||||||
|
fetchAllLinks
|
||||||
|
}
|
||||||
@@ -0,0 +1,184 @@
|
|||||||
|
import PropTypes from 'prop-types'
|
||||||
|
import { createPortal } from 'react-dom'
|
||||||
|
import { useDispatch } from 'react-redux'
|
||||||
|
import { useState, useEffect } from 'react'
|
||||||
|
|
||||||
|
import {
|
||||||
|
Box,
|
||||||
|
Button,
|
||||||
|
Dialog,
|
||||||
|
DialogActions,
|
||||||
|
DialogContent,
|
||||||
|
DialogTitle,
|
||||||
|
FormControl,
|
||||||
|
IconButton,
|
||||||
|
OutlinedInput,
|
||||||
|
Stack,
|
||||||
|
Typography
|
||||||
|
} from '@mui/material'
|
||||||
|
import { IconTrash } from '@tabler/icons'
|
||||||
|
import PerfectScrollbar from 'react-perfect-scrollbar'
|
||||||
|
|
||||||
|
import { BackdropLoader } from 'ui-component/loading/BackdropLoader'
|
||||||
|
import { StyledButton } from 'ui-component/button/StyledButton'
|
||||||
|
|
||||||
|
import scraperApi from 'api/scraper'
|
||||||
|
|
||||||
|
import { HIDE_CANVAS_DIALOG, SHOW_CANVAS_DIALOG } from 'store/actions'
|
||||||
|
|
||||||
|
const ManageScrapedLinksDialog = ({ show, dialogProps, onCancel, onSave }) => {
|
||||||
|
const portalElement = document.getElementById('portal')
|
||||||
|
const dispatch = useDispatch()
|
||||||
|
|
||||||
|
const [loading, setLoading] = useState(false)
|
||||||
|
const [selectedLinks, setSelectedLinks] = useState([])
|
||||||
|
const [url, setUrl] = useState('')
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
if (dialogProps.url) setUrl(dialogProps.url)
|
||||||
|
if (dialogProps.selectedLinks) setSelectedLinks(dialogProps.selectedLinks)
|
||||||
|
|
||||||
|
return () => {
|
||||||
|
setLoading(false)
|
||||||
|
setSelectedLinks([])
|
||||||
|
setUrl('')
|
||||||
|
}
|
||||||
|
}, [dialogProps])
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
if (show) dispatch({ type: SHOW_CANVAS_DIALOG })
|
||||||
|
else dispatch({ type: HIDE_CANVAS_DIALOG })
|
||||||
|
return () => dispatch({ type: HIDE_CANVAS_DIALOG })
|
||||||
|
}, [show, dispatch])
|
||||||
|
|
||||||
|
const handleFetchLinks = async () => {
|
||||||
|
setLoading(true)
|
||||||
|
const fetchLinksResp = await scraperApi.fetchAllLinks(url, 'webCrawl')
|
||||||
|
if (fetchLinksResp.data) {
|
||||||
|
setSelectedLinks(fetchLinksResp.data.links)
|
||||||
|
}
|
||||||
|
setLoading(false)
|
||||||
|
}
|
||||||
|
|
||||||
|
const handleChangeLink = (index, event) => {
|
||||||
|
const { value } = event.target
|
||||||
|
const links = [...selectedLinks]
|
||||||
|
links[index] = value
|
||||||
|
setSelectedLinks(links)
|
||||||
|
}
|
||||||
|
|
||||||
|
const handleRemoveLink = (index) => {
|
||||||
|
const links = [...selectedLinks]
|
||||||
|
links.splice(index, 1)
|
||||||
|
setSelectedLinks(links)
|
||||||
|
}
|
||||||
|
|
||||||
|
const handleSaveLinks = () => {
|
||||||
|
onSave(url, selectedLinks)
|
||||||
|
}
|
||||||
|
|
||||||
|
const component = show ? (
|
||||||
|
<Dialog
|
||||||
|
onClose={onCancel}
|
||||||
|
open={show}
|
||||||
|
fullWidth
|
||||||
|
maxWidth='sm'
|
||||||
|
aria-labelledby='manage-scraped-links-dialog-title'
|
||||||
|
aria-describedby='manage-scraped-links-dialog-description'
|
||||||
|
>
|
||||||
|
<DialogTitle sx={{ fontSize: '1rem' }} id='manage-scraped-links-dialog-title'>
|
||||||
|
{dialogProps.title || `Manage Scraped Links - ${url}`}
|
||||||
|
</DialogTitle>
|
||||||
|
<DialogContent>
|
||||||
|
<Box sx={{ mb: 4 }}>
|
||||||
|
<Stack flexDirection='row' gap={1} sx={{ width: '100%' }}>
|
||||||
|
<FormControl sx={{ mt: 1, width: '100%', display: 'flex', flexShrink: 1 }} size='small'>
|
||||||
|
<OutlinedInput
|
||||||
|
id='url'
|
||||||
|
size='small'
|
||||||
|
type='text'
|
||||||
|
value={url}
|
||||||
|
name='url'
|
||||||
|
onChange={(e) => {
|
||||||
|
setUrl(e.target.value)
|
||||||
|
}}
|
||||||
|
/>
|
||||||
|
</FormControl>
|
||||||
|
<Button
|
||||||
|
sx={{ borderRadius: '12px', mt: 1, display: 'flex', flexShrink: 0 }}
|
||||||
|
size='small'
|
||||||
|
variant='contained'
|
||||||
|
onClick={handleFetchLinks}
|
||||||
|
>
|
||||||
|
Fetch Links
|
||||||
|
</Button>
|
||||||
|
</Stack>
|
||||||
|
</Box>
|
||||||
|
<Typography sx={{ mb: 2, fontWeight: 500 }}>Scraped Links</Typography>
|
||||||
|
<>
|
||||||
|
{loading && <BackdropLoader open={loading} />}
|
||||||
|
{selectedLinks.length > 0 ? (
|
||||||
|
<PerfectScrollbar
|
||||||
|
style={{
|
||||||
|
height: '100%',
|
||||||
|
maxHeight: '320px',
|
||||||
|
overflowX: 'hidden',
|
||||||
|
display: 'flex',
|
||||||
|
flexDirection: 'column',
|
||||||
|
gap: 4
|
||||||
|
}}
|
||||||
|
>
|
||||||
|
{selectedLinks.map((link, index) => (
|
||||||
|
<div key={index} style={{ display: 'flex', width: '100%' }}>
|
||||||
|
<Box sx={{ display: 'flex', width: '100%' }}>
|
||||||
|
<OutlinedInput
|
||||||
|
sx={{ width: '100%' }}
|
||||||
|
key={index}
|
||||||
|
type='text'
|
||||||
|
onChange={(e) => handleChangeLink(index, e)}
|
||||||
|
size='small'
|
||||||
|
value={link}
|
||||||
|
name={`link_${index}`}
|
||||||
|
/>
|
||||||
|
</Box>
|
||||||
|
<Box sx={{ width: 'auto', flexGrow: 1 }}>
|
||||||
|
<IconButton
|
||||||
|
sx={{ height: 30, width: 30 }}
|
||||||
|
size='small'
|
||||||
|
color='error'
|
||||||
|
onClick={() => handleRemoveLink(index)}
|
||||||
|
edge='end'
|
||||||
|
>
|
||||||
|
<IconTrash />
|
||||||
|
</IconButton>
|
||||||
|
</Box>
|
||||||
|
</div>
|
||||||
|
))}
|
||||||
|
</PerfectScrollbar>
|
||||||
|
) : (
|
||||||
|
<div style={{ display: 'flex', alignItems: 'center', justifyContent: 'center' }}>
|
||||||
|
<Typography sx={{ my: 2 }}>Links scraped from the URL will appear here</Typography>
|
||||||
|
</div>
|
||||||
|
)}
|
||||||
|
</>
|
||||||
|
</DialogContent>
|
||||||
|
<DialogActions>
|
||||||
|
<Button onClick={onCancel}>Cancel</Button>
|
||||||
|
<StyledButton variant='contained' onClick={handleSaveLinks}>
|
||||||
|
Save
|
||||||
|
</StyledButton>
|
||||||
|
</DialogActions>
|
||||||
|
</Dialog>
|
||||||
|
) : null
|
||||||
|
|
||||||
|
return createPortal(component, portalElement)
|
||||||
|
}
|
||||||
|
|
||||||
|
ManageScrapedLinksDialog.propTypes = {
|
||||||
|
show: PropTypes.bool,
|
||||||
|
dialogProps: PropTypes.object,
|
||||||
|
onCancel: PropTypes.func,
|
||||||
|
onSave: PropTypes.func
|
||||||
|
}
|
||||||
|
|
||||||
|
export default ManageScrapedLinksDialog
|
||||||
@@ -28,6 +28,8 @@ import ToolDialog from 'views/tools/ToolDialog'
|
|||||||
import AssistantDialog from 'views/assistants/AssistantDialog'
|
import AssistantDialog from 'views/assistants/AssistantDialog'
|
||||||
import ExpandTextDialog from 'ui-component/dialog/ExpandTextDialog'
|
import ExpandTextDialog from 'ui-component/dialog/ExpandTextDialog'
|
||||||
import FormatPromptValuesDialog from 'ui-component/dialog/FormatPromptValuesDialog'
|
import FormatPromptValuesDialog from 'ui-component/dialog/FormatPromptValuesDialog'
|
||||||
|
import PromptLangsmithHubDialog from 'ui-component/dialog/PromptLangsmithHubDialog'
|
||||||
|
import ManageScrapedLinksDialog from 'ui-component/dialog/ManageScrapedLinksDialog'
|
||||||
import CredentialInputHandler from './CredentialInputHandler'
|
import CredentialInputHandler from './CredentialInputHandler'
|
||||||
|
|
||||||
// utils
|
// utils
|
||||||
@@ -35,7 +37,6 @@ import { getInputVariables } from 'utils/genericHelper'
|
|||||||
|
|
||||||
// const
|
// const
|
||||||
import { FLOWISE_CREDENTIAL_ID } from 'store/constant'
|
import { FLOWISE_CREDENTIAL_ID } from 'store/constant'
|
||||||
import PromptLangsmithHubDialog from '../../ui-component/dialog/PromptLangsmithHubDialog'
|
|
||||||
|
|
||||||
const EDITABLE_OPTIONS = ['selectedTool', 'selectedAssistant']
|
const EDITABLE_OPTIONS = ['selectedTool', 'selectedAssistant']
|
||||||
|
|
||||||
@@ -62,22 +63,25 @@ const NodeInputHandler = ({ inputAnchor, inputParam, data, disabled = false, isA
|
|||||||
const [showFormatPromptValuesDialog, setShowFormatPromptValuesDialog] = useState(false)
|
const [showFormatPromptValuesDialog, setShowFormatPromptValuesDialog] = useState(false)
|
||||||
const [formatPromptValuesDialogProps, setFormatPromptValuesDialogProps] = useState({})
|
const [formatPromptValuesDialogProps, setFormatPromptValuesDialogProps] = useState({})
|
||||||
const [showPromptHubDialog, setShowPromptHubDialog] = useState(false)
|
const [showPromptHubDialog, setShowPromptHubDialog] = useState(false)
|
||||||
|
const [showManageScrapedLinksDialog, setShowManageScrapedLinksDialog] = useState(false)
|
||||||
|
const [manageScrapedLinksDialogProps, setManageScrapedLinksDialogProps] = useState({})
|
||||||
|
|
||||||
const onExpandDialogClicked = (value, inputParam) => {
|
const onExpandDialogClicked = (value, inputParam) => {
|
||||||
const dialogProp = {
|
const dialogProps = {
|
||||||
value,
|
value,
|
||||||
inputParam,
|
inputParam,
|
||||||
disabled,
|
disabled,
|
||||||
confirmButtonName: 'Save',
|
confirmButtonName: 'Save',
|
||||||
cancelButtonName: 'Cancel'
|
cancelButtonName: 'Cancel'
|
||||||
}
|
}
|
||||||
setExpandDialogProps(dialogProp)
|
setExpandDialogProps(dialogProps)
|
||||||
setShowExpandDialog(true)
|
setShowExpandDialog(true)
|
||||||
}
|
}
|
||||||
|
|
||||||
const onShowPromptHubButtonClicked = () => {
|
const onShowPromptHubButtonClicked = () => {
|
||||||
setShowPromptHubDialog(true)
|
setShowPromptHubDialog(true)
|
||||||
}
|
}
|
||||||
|
|
||||||
const onShowPromptHubButtonSubmit = (templates) => {
|
const onShowPromptHubButtonSubmit = (templates) => {
|
||||||
setShowPromptHubDialog(false)
|
setShowPromptHubDialog(false)
|
||||||
for (const t of templates) {
|
for (const t of templates) {
|
||||||
@@ -86,6 +90,24 @@ const NodeInputHandler = ({ inputAnchor, inputParam, data, disabled = false, isA
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const onManageLinksDialogClicked = (url, selectedLinks) => {
|
||||||
|
const dialogProps = {
|
||||||
|
url,
|
||||||
|
selectedLinks,
|
||||||
|
confirmButtonName: 'Save',
|
||||||
|
cancelButtonName: 'Cancel'
|
||||||
|
}
|
||||||
|
setManageScrapedLinksDialogProps(dialogProps)
|
||||||
|
setShowManageScrapedLinksDialog(true)
|
||||||
|
}
|
||||||
|
|
||||||
|
const onManageLinksDialogSave = (url, links) => {
|
||||||
|
setShowManageScrapedLinksDialog(false)
|
||||||
|
data.inputs.url = url
|
||||||
|
data.inputs.selectedLinks = links
|
||||||
|
}
|
||||||
|
|
||||||
const onEditJSONClicked = (value, inputParam) => {
|
const onEditJSONClicked = (value, inputParam) => {
|
||||||
// Preset values if the field is format prompt values
|
// Preset values if the field is format prompt values
|
||||||
let inputValue = value
|
let inputValue = value
|
||||||
@@ -436,6 +458,37 @@ const NodeInputHandler = ({ inputAnchor, inputParam, data, disabled = false, isA
|
|||||||
</div>
|
</div>
|
||||||
</>
|
</>
|
||||||
)}
|
)}
|
||||||
|
{(data.name === 'cheerioWebScraper' ||
|
||||||
|
data.name === 'puppeteerWebScraper' ||
|
||||||
|
data.name === 'playwrightWebScraper') &&
|
||||||
|
inputParam.name === 'url' && (
|
||||||
|
<>
|
||||||
|
<Button
|
||||||
|
style={{
|
||||||
|
display: 'flex',
|
||||||
|
flexDirection: 'row',
|
||||||
|
width: '100%'
|
||||||
|
}}
|
||||||
|
disabled={disabled}
|
||||||
|
sx={{ borderRadius: '12px', width: '100%', mt: 1 }}
|
||||||
|
variant='outlined'
|
||||||
|
onClick={() =>
|
||||||
|
onManageLinksDialogClicked(
|
||||||
|
data.inputs[inputParam.name] ?? inputParam.default ?? '',
|
||||||
|
data.inputs.selectedLinks
|
||||||
|
)
|
||||||
|
}
|
||||||
|
>
|
||||||
|
Manage Links
|
||||||
|
</Button>
|
||||||
|
<ManageScrapedLinksDialog
|
||||||
|
show={showManageScrapedLinksDialog}
|
||||||
|
dialogProps={manageScrapedLinksDialogProps}
|
||||||
|
onCancel={() => setShowManageScrapedLinksDialog(false)}
|
||||||
|
onSave={onManageLinksDialogSave}
|
||||||
|
/>
|
||||||
|
</>
|
||||||
|
)}
|
||||||
</Box>
|
</Box>
|
||||||
</>
|
</>
|
||||||
)}
|
)}
|
||||||
|
|||||||
Reference in New Issue
Block a user