feat: add nodes
This commit is contained in:
parent
8b1a28e05e
commit
4a26bf5d46
8 changed files with 82 additions and 10 deletions
|
|
@ -37,10 +37,13 @@ toolkits:
|
||||||
memories:
|
memories:
|
||||||
- ConversationBufferMemory
|
- ConversationBufferMemory
|
||||||
|
|
||||||
embeddings: []
|
embeddings:
|
||||||
|
- OpenAIEmbeddings
|
||||||
|
|
||||||
vectorstores: []
|
vectorstores:
|
||||||
|
- Chroma
|
||||||
|
|
||||||
documentloaders: []
|
documentloaders:
|
||||||
|
- TextLoader
|
||||||
|
|
||||||
dev: false
|
dev: false
|
||||||
|
|
|
||||||
|
|
@ -142,3 +142,33 @@ class WrapperNode(Node):
|
||||||
self.params["headers"] = eval(self.params["headers"])
|
self.params["headers"] = eval(self.params["headers"])
|
||||||
self._build()
|
self._build()
|
||||||
return deepcopy(self._built_object)
|
return deepcopy(self._built_object)
|
||||||
|
|
||||||
|
|
||||||
|
class DocumentLoaderNode(Node):
|
||||||
|
def __init__(self, data: Dict):
|
||||||
|
super().__init__(data, base_type="documentloaders")
|
||||||
|
|
||||||
|
def build(self, force: bool = False) -> Any:
|
||||||
|
if not self._built or force:
|
||||||
|
self._build()
|
||||||
|
return deepcopy(self._built_object)
|
||||||
|
|
||||||
|
|
||||||
|
class EmbeddingNode(Node):
|
||||||
|
def __init__(self, data: Dict):
|
||||||
|
super().__init__(data, base_type="embeddings")
|
||||||
|
|
||||||
|
def build(self, force: bool = False) -> Any:
|
||||||
|
if not self._built or force:
|
||||||
|
self._build()
|
||||||
|
return deepcopy(self._built_object)
|
||||||
|
|
||||||
|
|
||||||
|
class VectorStoreNode(Node):
|
||||||
|
def __init__(self, data: Dict):
|
||||||
|
super().__init__(data, base_type="vectorstores")
|
||||||
|
|
||||||
|
def build(self, force: bool = False) -> Any:
|
||||||
|
if not self._built or force:
|
||||||
|
self._build()
|
||||||
|
return deepcopy(self._built_object)
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,7 @@ from langflow.utils.util import build_template_from_class
|
||||||
|
|
||||||
|
|
||||||
class DocumentLoaderCreator(LangChainTypeCreator):
|
class DocumentLoaderCreator(LangChainTypeCreator):
|
||||||
type_name: str = "documentloader"
|
type_name: str = "documentloaders"
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def type_to_loader_dict(self) -> Dict:
|
def type_to_loader_dict(self) -> Dict:
|
||||||
|
|
@ -16,7 +16,21 @@ class DocumentLoaderCreator(LangChainTypeCreator):
|
||||||
def get_signature(self, name: str) -> Optional[Dict]:
|
def get_signature(self, name: str) -> Optional[Dict]:
|
||||||
"""Get the signature of a document loader."""
|
"""Get the signature of a document loader."""
|
||||||
try:
|
try:
|
||||||
return build_template_from_class(name, documentloaders_type_to_cls_dict)
|
signature = build_template_from_class(
|
||||||
|
name, documentloaders_type_to_cls_dict
|
||||||
|
)
|
||||||
|
|
||||||
|
signature["template"]["file"] = {
|
||||||
|
"type": "file",
|
||||||
|
"required": True,
|
||||||
|
"show": True,
|
||||||
|
"name": "path",
|
||||||
|
"value": "",
|
||||||
|
"suffixes": [".txt"],
|
||||||
|
"fileTypes": ["txt"],
|
||||||
|
}
|
||||||
|
|
||||||
|
return signature
|
||||||
except ValueError as exc:
|
except ValueError as exc:
|
||||||
raise ValueError(f"Documment Loader {name} not found") from exc
|
raise ValueError(f"Documment Loader {name} not found") from exc
|
||||||
|
|
||||||
|
|
|
||||||
0
src/backend/langflow/interface/embeddings/__init__.py
Normal file
0
src/backend/langflow/interface/embeddings/__init__.py
Normal file
0
src/backend/langflow/interface/vectorStore/__init__.py
Normal file
0
src/backend/langflow/interface/vectorStore/__init__.py
Normal file
|
|
@ -7,7 +7,7 @@ from langflow.utils.util import build_template_from_class
|
||||||
|
|
||||||
|
|
||||||
class VectorstoreCreator(LangChainTypeCreator):
|
class VectorstoreCreator(LangChainTypeCreator):
|
||||||
type_name: str = "vectorstore"
|
type_name: str = "vectorstores"
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def type_to_loader_dict(self) -> Dict:
|
def type_to_loader_dict(self) -> Dict:
|
||||||
|
|
@ -16,7 +16,26 @@ class VectorstoreCreator(LangChainTypeCreator):
|
||||||
def get_signature(self, name: str) -> Optional[Dict]:
|
def get_signature(self, name: str) -> Optional[Dict]:
|
||||||
"""Get the signature of an embedding."""
|
"""Get the signature of an embedding."""
|
||||||
try:
|
try:
|
||||||
return build_template_from_class(name, vectorstores_type_to_cls_dict)
|
signature = build_template_from_class(name, vectorstores_type_to_cls_dict)
|
||||||
|
|
||||||
|
signature["template"] = {
|
||||||
|
"Document Loader": {
|
||||||
|
"type": "BaseLoader",
|
||||||
|
"required": True,
|
||||||
|
"show": True,
|
||||||
|
"name": "Document Loader",
|
||||||
|
"value": "",
|
||||||
|
},
|
||||||
|
"Embedding": {
|
||||||
|
"type": "Embeddings",
|
||||||
|
"required": True,
|
||||||
|
"show": True,
|
||||||
|
"name": "Embedding",
|
||||||
|
"value": "",
|
||||||
|
},
|
||||||
|
}
|
||||||
|
return signature
|
||||||
|
|
||||||
except ValueError as exc:
|
except ValueError as exc:
|
||||||
raise ValueError(f"Vector Store {name} not found") from exc
|
raise ValueError(f"Vector Store {name} not found") from exc
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -76,7 +76,9 @@ export const nodeColors: {[char: string]: string} = {
|
||||||
advanced: "#000000",
|
advanced: "#000000",
|
||||||
chat: "#454173",
|
chat: "#454173",
|
||||||
thought:"#272541",
|
thought:"#272541",
|
||||||
docloaders:"#FF9135",
|
embeddings:"#FF9135",
|
||||||
|
documentloader:"#FF9135",
|
||||||
|
vectorstore: "#FF9135",
|
||||||
unknown:"#9CA3AF"
|
unknown:"#9CA3AF"
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -89,7 +91,9 @@ export const nodeNames:{[char: string]: string} = {
|
||||||
memories: "Memories",
|
memories: "Memories",
|
||||||
advanced: "Advanced",
|
advanced: "Advanced",
|
||||||
chat: "Chat",
|
chat: "Chat",
|
||||||
docloaders:"Document Loader",
|
embeddings: "Embeddings",
|
||||||
|
documentloader: "Document Loaders",
|
||||||
|
vectorstore: "Vector Stores",
|
||||||
toolkits:"Toolkits",
|
toolkits:"Toolkits",
|
||||||
wrappers:"Wrappers",
|
wrappers:"Wrappers",
|
||||||
unknown:"Unknown"
|
unknown:"Unknown"
|
||||||
|
|
@ -104,7 +108,9 @@ export const nodeIcons:{[char: string]: React.ForwardRefExoticComponent<React.SV
|
||||||
tools: WrenchIcon,
|
tools: WrenchIcon,
|
||||||
advanced: ComputerDesktopIcon,
|
advanced: ComputerDesktopIcon,
|
||||||
chat: Bars3CenterLeftIcon,
|
chat: Bars3CenterLeftIcon,
|
||||||
docloaders:Bars3CenterLeftIcon,
|
embeddings:PaperClipIcon,
|
||||||
|
documentloader:PaperClipIcon,
|
||||||
|
vectorstore: PaperClipIcon,
|
||||||
toolkits:WrenchScrewdriverIcon,
|
toolkits:WrenchScrewdriverIcon,
|
||||||
wrappers:GiftIcon,
|
wrappers:GiftIcon,
|
||||||
unknown:QuestionMarkCircleIcon
|
unknown:QuestionMarkCircleIcon
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue