From 4682be5c0312b930ea19c1b70b4b7df979f8ca4d Mon Sep 17 00:00:00 2001 From: Henry Date: Tue, 19 Sep 2023 11:53:16 +0100 Subject: [PATCH 1/5] update openai models --- .../components/nodes/llms/OpenAI/OpenAI.ts | 20 +++--- .../chatflows/Multiple VectorDB.json | 66 +++++++++---------- .../chatflows/Prompt Chaining.json | 45 ++++++------- .../chatflows/Simple LLM Chain.json | 22 +++---- .../marketplaces/chatflows/Zapier NLA.json | 22 +++---- 5 files changed, 88 insertions(+), 87 deletions(-) diff --git a/packages/components/nodes/llms/OpenAI/OpenAI.ts b/packages/components/nodes/llms/OpenAI/OpenAI.ts index 951d1a70..3bbb38f2 100644 --- a/packages/components/nodes/llms/OpenAI/OpenAI.ts +++ b/packages/components/nodes/llms/OpenAI/OpenAI.ts @@ -17,7 +17,7 @@ class OpenAI_LLMs implements INode { constructor() { this.label = 'OpenAI' this.name = 'openAI' - this.version = 1.0 + this.version = 2.0 this.type = 'OpenAI' this.icon = 'openai.png' this.category = 'LLMs' @@ -36,23 +36,23 @@ class OpenAI_LLMs implements INode { type: 'options', options: [ { - label: 'text-davinci-003', - name: 'text-davinci-003' + label: 'gpt-3.5-turbo-instruct', + name: 'gpt-3.5-turbo-instruct' }, { - label: 'text-davinci-002', - name: 'text-davinci-002' + label: 'babbage-002', + name: 'babbage-002' }, { - label: 'text-curie-001', - name: 'text-curie-001' + label: 'davinci-002', + name: 'davinci-002' }, { - label: 'text-babbage-001', - name: 'text-babbage-001' + label: 'gpt-3.5-turbo-base', + name: 'gpt-3.5-turbo-base' } ], - default: 'text-davinci-003', + default: 'gpt-3.5-turbo-instruct', optional: true }, { diff --git a/packages/server/marketplaces/chatflows/Multiple VectorDB.json b/packages/server/marketplaces/chatflows/Multiple VectorDB.json index 101a683b..966c5a3d 100644 --- a/packages/server/marketplaces/chatflows/Multiple VectorDB.json +++ b/packages/server/marketplaces/chatflows/Multiple VectorDB.json @@ -328,7 +328,7 @@ "id": "openAI_2", "label": "OpenAI", "name": "openAI", - "version": 1, + "version": 2, "type": "OpenAI", "baseClasses": ["OpenAI", "BaseLLM", "BaseLanguageModel"], "category": "LLMs", @@ -347,23 +347,23 @@ "type": "options", "options": [ { - "label": "text-davinci-003", - "name": "text-davinci-003" + "label": "gpt-3.5-turbo-instruct", + "name": "gpt-3.5-turbo-instruct" }, { - "label": "text-davinci-002", - "name": "text-davinci-002" + "label": "babbage-002", + "name": "babbage-002" }, { - "label": "text-curie-001", - "name": "text-curie-001" + "label": "davinci-002", + "name": "davinci-002" }, { - "label": "text-babbage-001", - "name": "text-babbage-001" + "label": "gpt-3.5-turbo-base", + "name": "gpt-3.5-turbo-base" } ], - "default": "text-davinci-003", + "default": "gpt-3.5-turbo-instruct", "optional": true, "id": "openAI_2-input-modelName-options" }, @@ -442,7 +442,7 @@ ], "inputAnchors": [], "inputs": { - "modelName": "text-davinci-003", + "modelName": "gpt-3.5-turbo-instruct", "temperature": 0.7, "maxTokens": "", "topP": "", @@ -743,7 +743,7 @@ "id": "openAI_3", "label": "OpenAI", "name": "openAI", - "version": 1, + "version": 2, "type": "OpenAI", "baseClasses": ["OpenAI", "BaseLLM", "BaseLanguageModel"], "category": "LLMs", @@ -762,23 +762,23 @@ "type": "options", "options": [ { - "label": "text-davinci-003", - "name": "text-davinci-003" + "label": "gpt-3.5-turbo-instruct", + "name": "gpt-3.5-turbo-instruct" }, { - "label": "text-davinci-002", - "name": "text-davinci-002" + "label": "babbage-002", + "name": "babbage-002" }, { - "label": "text-curie-001", - "name": "text-curie-001" + "label": "davinci-002", + "name": "davinci-002" }, { - "label": "text-babbage-001", - "name": "text-babbage-001" + "label": "gpt-3.5-turbo-base", + "name": "gpt-3.5-turbo-base" } ], - "default": "text-davinci-003", + "default": "gpt-3.5-turbo-instruct", "optional": true, "id": "openAI_3-input-modelName-options" }, @@ -857,7 +857,7 @@ ], "inputAnchors": [], "inputs": { - "modelName": "text-davinci-003", + "modelName": "gpt-3.5-turbo-instruct", "temperature": 0.7, "maxTokens": "", "topP": "", @@ -1008,7 +1008,7 @@ "id": "openAI_4", "label": "OpenAI", "name": "openAI", - "version": 1, + "version": 2, "type": "OpenAI", "baseClasses": ["OpenAI", "BaseLLM", "BaseLanguageModel"], "category": "LLMs", @@ -1027,23 +1027,23 @@ "type": "options", "options": [ { - "label": "text-davinci-003", - "name": "text-davinci-003" + "label": "gpt-3.5-turbo-instruct", + "name": "gpt-3.5-turbo-instruct" }, { - "label": "text-davinci-002", - "name": "text-davinci-002" + "label": "babbage-002", + "name": "babbage-002" }, { - "label": "text-curie-001", - "name": "text-curie-001" + "label": "davinci-002", + "name": "davinci-002" }, { - "label": "text-babbage-001", - "name": "text-babbage-001" + "label": "gpt-3.5-turbo-base", + "name": "gpt-3.5-turbo-base" } ], - "default": "text-davinci-003", + "default": "gpt-3.5-turbo-instruct", "optional": true, "id": "openAI_4-input-modelName-options" }, @@ -1122,7 +1122,7 @@ ], "inputAnchors": [], "inputs": { - "modelName": "text-davinci-003", + "modelName": "gpt-3.5-turbo-instruct", "temperature": 0.7, "maxTokens": "", "topP": "", diff --git a/packages/server/marketplaces/chatflows/Prompt Chaining.json b/packages/server/marketplaces/chatflows/Prompt Chaining.json index e0491cc1..e48f1b8b 100644 --- a/packages/server/marketplaces/chatflows/Prompt Chaining.json +++ b/packages/server/marketplaces/chatflows/Prompt Chaining.json @@ -296,7 +296,7 @@ "id": "openAI_1", "label": "OpenAI", "name": "openAI", - "version": 1, + "version": 2, "type": "OpenAI", "baseClasses": ["OpenAI", "BaseLLM", "BaseLanguageModel"], "category": "LLMs", @@ -315,23 +315,23 @@ "type": "options", "options": [ { - "label": "text-davinci-003", - "name": "text-davinci-003" + "label": "gpt-3.5-turbo-instruct", + "name": "gpt-3.5-turbo-instruct" }, { - "label": "text-davinci-002", - "name": "text-davinci-002" + "label": "babbage-002", + "name": "babbage-002" }, { - "label": "text-curie-001", - "name": "text-curie-001" + "label": "davinci-002", + "name": "davinci-002" }, { - "label": "text-babbage-001", - "name": "text-babbage-001" + "label": "gpt-3.5-turbo-base", + "name": "gpt-3.5-turbo-base" } ], - "default": "text-davinci-003", + "default": "gpt-3.5-turbo-instruct", "optional": true, "id": "openAI_1-input-modelName-options" }, @@ -410,7 +410,7 @@ ], "inputAnchors": [], "inputs": { - "modelName": "text-davinci-003", + "modelName": "gpt-3.5-turbo-instruct", "temperature": 0.7, "maxTokens": "", "topP": "", @@ -452,7 +452,7 @@ "id": "openAI_2", "label": "OpenAI", "name": "openAI", - "version": 1, + "version": 2, "type": "OpenAI", "baseClasses": ["OpenAI", "BaseLLM", "BaseLanguageModel"], "category": "LLMs", @@ -471,23 +471,23 @@ "type": "options", "options": [ { - "label": "text-davinci-003", - "name": "text-davinci-003" + "label": "gpt-3.5-turbo-instruct", + "name": "gpt-3.5-turbo-instruct" }, { - "label": "text-davinci-002", - "name": "text-davinci-002" + "label": "babbage-002", + "name": "babbage-002" }, { - "label": "text-curie-001", - "name": "text-curie-001" + "label": "davinci-002", + "name": "davinci-002" }, { - "label": "text-babbage-001", - "name": "text-babbage-001" + "label": "gpt-3.5-turbo-base", + "name": "gpt-3.5-turbo-base" } ], - "default": "text-davinci-003", + "default": "gpt-3.5-turbo-instruct", "optional": true, "id": "openAI_2-input-modelName-options" }, @@ -565,8 +565,9 @@ } ], "inputAnchors": [], + "default": "gpt-3.5-turbo-instruct", "inputs": { - "modelName": "text-davinci-003", + "modelName": "gpt-3.5-turbo-instruct", "temperature": 0.7, "maxTokens": "", "topP": "", diff --git a/packages/server/marketplaces/chatflows/Simple LLM Chain.json b/packages/server/marketplaces/chatflows/Simple LLM Chain.json index 0fc648c6..099bf215 100644 --- a/packages/server/marketplaces/chatflows/Simple LLM Chain.json +++ b/packages/server/marketplaces/chatflows/Simple LLM Chain.json @@ -155,7 +155,7 @@ "id": "openAI_0", "label": "OpenAI", "name": "openAI", - "version": 1, + "version": 2, "type": "OpenAI", "baseClasses": ["OpenAI", "BaseLLM", "BaseLanguageModel"], "category": "LLMs", @@ -174,23 +174,23 @@ "type": "options", "options": [ { - "label": "text-davinci-003", - "name": "text-davinci-003" + "label": "gpt-3.5-turbo-instruct", + "name": "gpt-3.5-turbo-instruct" }, { - "label": "text-davinci-002", - "name": "text-davinci-002" + "label": "babbage-002", + "name": "babbage-002" }, { - "label": "text-curie-001", - "name": "text-curie-001" + "label": "davinci-002", + "name": "davinci-002" }, { - "label": "text-babbage-001", - "name": "text-babbage-001" + "label": "gpt-3.5-turbo-base", + "name": "gpt-3.5-turbo-base" } ], - "default": "text-davinci-003", + "default": "gpt-3.5-turbo-instruct", "optional": true, "id": "openAI_0-input-modelName-options" }, @@ -269,7 +269,7 @@ ], "inputAnchors": [], "inputs": { - "modelName": "text-davinci-003", + "modelName": "gpt-3.5-turbo-instruct", "temperature": 0.7, "maxTokens": "", "topP": "", diff --git a/packages/server/marketplaces/chatflows/Zapier NLA.json b/packages/server/marketplaces/chatflows/Zapier NLA.json index 60258b46..154a3314 100644 --- a/packages/server/marketplaces/chatflows/Zapier NLA.json +++ b/packages/server/marketplaces/chatflows/Zapier NLA.json @@ -115,7 +115,7 @@ "id": "openAI_0", "label": "OpenAI", "name": "openAI", - "version": 1, + "version": 2, "type": "OpenAI", "baseClasses": ["OpenAI", "BaseLLM", "BaseLanguageModel"], "category": "LLMs", @@ -134,23 +134,23 @@ "type": "options", "options": [ { - "label": "text-davinci-003", - "name": "text-davinci-003" + "label": "gpt-3.5-turbo-instruct", + "name": "gpt-3.5-turbo-instruct" }, { - "label": "text-davinci-002", - "name": "text-davinci-002" + "label": "babbage-002", + "name": "babbage-002" }, { - "label": "text-curie-001", - "name": "text-curie-001" + "label": "davinci-002", + "name": "davinci-002" }, { - "label": "text-babbage-001", - "name": "text-babbage-001" + "label": "gpt-3.5-turbo-base", + "name": "gpt-3.5-turbo-base" } ], - "default": "text-davinci-003", + "default": "gpt-3.5-turbo-instruct", "optional": true, "id": "openAI_0-input-modelName-options" }, @@ -229,7 +229,7 @@ ], "inputAnchors": [], "inputs": { - "modelName": "text-davinci-003", + "modelName": "gpt-3.5-turbo-instruct", "temperature": 0.7, "maxTokens": "", "topP": "", From 173b645fe8116c5f3582fc3024f6725ba6e1ae72 Mon Sep 17 00:00:00 2001 From: matthias Date: Tue, 19 Sep 2023 19:34:01 +0200 Subject: [PATCH 2/5] Added CSS selector to Cheerio --- .../nodes/documentloaders/Cheerio/Cheerio.ts | 24 ++++++++++++++++--- 1 file changed, 21 insertions(+), 3 deletions(-) diff --git a/packages/components/nodes/documentloaders/Cheerio/Cheerio.ts b/packages/components/nodes/documentloaders/Cheerio/Cheerio.ts index 1c21c1ea..aa899bcb 100644 --- a/packages/components/nodes/documentloaders/Cheerio/Cheerio.ts +++ b/packages/components/nodes/documentloaders/Cheerio/Cheerio.ts @@ -1,8 +1,10 @@ import { INode, INodeData, INodeParams } from '../../../src/Interface' import { TextSplitter } from 'langchain/text_splitter' -import { CheerioWebBaseLoader } from 'langchain/document_loaders/web/cheerio' +import { CheerioWebBaseLoader, WebBaseLoaderParams } from 'langchain/document_loaders/web/cheerio' import { test } from 'linkifyjs' +import { parse } from 'css-what' import { webCrawl, xmlScrape } from '../../../src' +import { SelectorType } from 'cheerio' class Cheerio_DocumentLoaders implements INode { label: string @@ -18,7 +20,7 @@ class Cheerio_DocumentLoaders implements INode { constructor() { this.label = 'Cheerio Web Scraper' this.name = 'cheerioWebScraper' - this.version = 1.0 + this.version = 1.1 this.type = 'Document' this.icon = 'cheerio.svg' this.category = 'Document Loaders' @@ -66,6 +68,14 @@ class Cheerio_DocumentLoaders implements INode { 'Only used when "Get Relative Links Method" is selected. Set 0 to retrieve all relative links, default limit is 10.', warning: `Retrieving all links might take long time, and all links will be upserted again if the flow's state changed (eg: different URL, chunk size, etc)` }, + { + label: 'Selector (CSS)', + name: 'selector', + type: 'string', + description: 'Specify a CSS selector to select the content to be extracted', + optional: true, + additionalParams: true + }, { label: 'Metadata', name: 'metadata', @@ -88,10 +98,18 @@ class Cheerio_DocumentLoaders implements INode { throw new Error('Invalid URL') } + const selector: SelectorType = nodeData.inputs?.selector as SelectorType + + let params: WebBaseLoaderParams = {} + if (selector) { + parse(selector) // comes with cheerio - will throw error if invalid + params['selector'] = selector + } + async function cheerioLoader(url: string): Promise { try { let docs = [] - const loader = new CheerioWebBaseLoader(url) + const loader = new CheerioWebBaseLoader(url, params) if (textSplitter) { docs = await loader.loadAndSplit(textSplitter) } else { From 6484e29132987a3521d1e697bbc4cc43e3146cdd Mon Sep 17 00:00:00 2001 From: Henry Date: Wed, 20 Sep 2023 01:22:56 +0100 Subject: [PATCH 3/5] chroma installation fix --- packages/components/nodes/vectorstores/Chroma/core.ts | 7 ++++--- packages/components/package.json | 2 +- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/packages/components/nodes/vectorstores/Chroma/core.ts b/packages/components/nodes/vectorstores/Chroma/core.ts index ccdbe03c..8277c58e 100644 --- a/packages/components/nodes/vectorstores/Chroma/core.ts +++ b/packages/components/nodes/vectorstores/Chroma/core.ts @@ -1,6 +1,7 @@ import { Chroma, ChromaLibArgs } from 'langchain/vectorstores/chroma' import { Embeddings } from 'langchain/embeddings/base' import type { Collection } from 'chromadb' +import { ChromaClient } from 'chromadb' interface ChromaAuth { chromaApiKey?: string @@ -23,7 +24,6 @@ export class ChromaExtended extends Chroma { async ensureCollection(): Promise { if (!this.collection) { if (!this.index) { - const { ChromaClient } = await Chroma.imports() const obj: any = { path: this.url } @@ -37,8 +37,9 @@ export class ChromaExtended extends Chroma { this.index = new ChromaClient(obj) } try { - this.collection = await this.index.getOrCreateCollection({ - name: this.collectionName + this.collection = await this.index!.getOrCreateCollection({ + name: this.collectionName, + ...(this.collectionMetadata && { metadata: this.collectionMetadata }) }) } catch (err) { throw new Error(`Chroma getOrCreateCollection error: ${err}`) diff --git a/packages/components/package.json b/packages/components/package.json index a69b8f26..373584b0 100644 --- a/packages/components/package.json +++ b/packages/components/package.json @@ -32,7 +32,7 @@ "apify-client": "^2.7.1", "axios": "^0.27.2", "cheerio": "^1.0.0-rc.12", - "chromadb": "^1.5.3", + "chromadb": "^1.5.11", "cohere-ai": "^6.2.0", "d3-dsv": "2", "dotenv": "^16.0.0", From 172247972a539067430287ba1388c9891307b044 Mon Sep 17 00:00:00 2001 From: Henry Date: Wed, 20 Sep 2023 15:55:21 +0100 Subject: [PATCH 4/5] =?UTF-8?q?=F0=9F=A5=B3=20flowise-components@1.3.6=20r?= =?UTF-8?q?elease?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packages/components/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/components/package.json b/packages/components/package.json index 373584b0..a3cc7728 100644 --- a/packages/components/package.json +++ b/packages/components/package.json @@ -1,6 +1,6 @@ { "name": "flowise-components", - "version": "1.3.5", + "version": "1.3.6", "description": "Flowiseai Components", "main": "dist/src/index", "types": "dist/src/index.d.ts", From 096451f82fe8c72a07c51710a8ba83e45fd0dbe4 Mon Sep 17 00:00:00 2001 From: Henry Date: Wed, 20 Sep 2023 20:07:13 +0100 Subject: [PATCH 5/5] update langchain version --- .../ChatGoogleVertexAI/ChatGoogleVertexAI.ts | 2 +- packages/components/nodes/llms/OpenAI/OpenAI.ts | 4 ---- packages/components/package.json | 2 +- .../marketplaces/chatflows/Multiple VectorDB.json | 12 ------------ .../marketplaces/chatflows/Prompt Chaining.json | 8 -------- .../marketplaces/chatflows/Simple LLM Chain.json | 4 ---- .../server/marketplaces/chatflows/Zapier NLA.json | 4 ---- 7 files changed, 2 insertions(+), 34 deletions(-) diff --git a/packages/components/nodes/chatmodels/ChatGoogleVertexAI/ChatGoogleVertexAI.ts b/packages/components/nodes/chatmodels/ChatGoogleVertexAI/ChatGoogleVertexAI.ts index 1bc06f4b..4cb206f5 100644 --- a/packages/components/nodes/chatmodels/ChatGoogleVertexAI/ChatGoogleVertexAI.ts +++ b/packages/components/nodes/chatmodels/ChatGoogleVertexAI/ChatGoogleVertexAI.ts @@ -114,7 +114,7 @@ class GoogleVertexAI_ChatModels implements INode { const maxOutputTokens = nodeData.inputs?.maxOutputTokens as string const topP = nodeData.inputs?.topP as string - const obj: Partial = { + const obj: GoogleVertexAIChatInput = { temperature: parseFloat(temperature), model: modelName } diff --git a/packages/components/nodes/llms/OpenAI/OpenAI.ts b/packages/components/nodes/llms/OpenAI/OpenAI.ts index 3bbb38f2..2960ad2a 100644 --- a/packages/components/nodes/llms/OpenAI/OpenAI.ts +++ b/packages/components/nodes/llms/OpenAI/OpenAI.ts @@ -46,10 +46,6 @@ class OpenAI_LLMs implements INode { { label: 'davinci-002', name: 'davinci-002' - }, - { - label: 'gpt-3.5-turbo-base', - name: 'gpt-3.5-turbo-base' } ], default: 'gpt-3.5-turbo-instruct', diff --git a/packages/components/package.json b/packages/components/package.json index a69b8f26..45b7c02d 100644 --- a/packages/components/package.json +++ b/packages/components/package.json @@ -42,7 +42,7 @@ "google-auth-library": "^9.0.0", "graphql": "^16.6.0", "html-to-text": "^9.0.5", - "langchain": "^0.0.147", + "langchain": "^0.0.152", "langfuse-langchain": "^1.0.14-alpha.0", "langsmith": "^0.0.32", "linkifyjs": "^4.1.1", diff --git a/packages/server/marketplaces/chatflows/Multiple VectorDB.json b/packages/server/marketplaces/chatflows/Multiple VectorDB.json index 966c5a3d..ac4643aa 100644 --- a/packages/server/marketplaces/chatflows/Multiple VectorDB.json +++ b/packages/server/marketplaces/chatflows/Multiple VectorDB.json @@ -357,10 +357,6 @@ { "label": "davinci-002", "name": "davinci-002" - }, - { - "label": "gpt-3.5-turbo-base", - "name": "gpt-3.5-turbo-base" } ], "default": "gpt-3.5-turbo-instruct", @@ -772,10 +768,6 @@ { "label": "davinci-002", "name": "davinci-002" - }, - { - "label": "gpt-3.5-turbo-base", - "name": "gpt-3.5-turbo-base" } ], "default": "gpt-3.5-turbo-instruct", @@ -1037,10 +1029,6 @@ { "label": "davinci-002", "name": "davinci-002" - }, - { - "label": "gpt-3.5-turbo-base", - "name": "gpt-3.5-turbo-base" } ], "default": "gpt-3.5-turbo-instruct", diff --git a/packages/server/marketplaces/chatflows/Prompt Chaining.json b/packages/server/marketplaces/chatflows/Prompt Chaining.json index e48f1b8b..5bce9905 100644 --- a/packages/server/marketplaces/chatflows/Prompt Chaining.json +++ b/packages/server/marketplaces/chatflows/Prompt Chaining.json @@ -325,10 +325,6 @@ { "label": "davinci-002", "name": "davinci-002" - }, - { - "label": "gpt-3.5-turbo-base", - "name": "gpt-3.5-turbo-base" } ], "default": "gpt-3.5-turbo-instruct", @@ -481,10 +477,6 @@ { "label": "davinci-002", "name": "davinci-002" - }, - { - "label": "gpt-3.5-turbo-base", - "name": "gpt-3.5-turbo-base" } ], "default": "gpt-3.5-turbo-instruct", diff --git a/packages/server/marketplaces/chatflows/Simple LLM Chain.json b/packages/server/marketplaces/chatflows/Simple LLM Chain.json index 099bf215..21d5ab68 100644 --- a/packages/server/marketplaces/chatflows/Simple LLM Chain.json +++ b/packages/server/marketplaces/chatflows/Simple LLM Chain.json @@ -184,10 +184,6 @@ { "label": "davinci-002", "name": "davinci-002" - }, - { - "label": "gpt-3.5-turbo-base", - "name": "gpt-3.5-turbo-base" } ], "default": "gpt-3.5-turbo-instruct", diff --git a/packages/server/marketplaces/chatflows/Zapier NLA.json b/packages/server/marketplaces/chatflows/Zapier NLA.json index 154a3314..182b24ae 100644 --- a/packages/server/marketplaces/chatflows/Zapier NLA.json +++ b/packages/server/marketplaces/chatflows/Zapier NLA.json @@ -144,10 +144,6 @@ { "label": "davinci-002", "name": "davinci-002" - }, - { - "label": "gpt-3.5-turbo-base", - "name": "gpt-3.5-turbo-base" } ], "default": "gpt-3.5-turbo-instruct",