diff --git a/tests/data/basic_example.json b/tests/data/basic_example.json index dabe16786..2555562f9 100644 --- a/tests/data/basic_example.json +++ b/tests/data/basic_example.json @@ -1,505 +1 @@ -{ - "name": "New Flow ", - "id": "0", - "data": { - "nodes": [ - { - "width": 384, - "height": 391, - "id": "dndnode_1", - "type": "genericNode", - "position": { - "x": 644, - "y": 348 - }, - "data": { - "type": "LLMChain", - "node": { - "template": { - "_type": "llm_chain", - "memory": { - "type": "BaseMemory", - "required": false, - "placeholder": "", - "list": false, - "show": true, - "password": false, - "multiline": false, - "value": null - }, - "verbose": { - "type": "bool", - "required": false, - "placeholder": "", - "list": false, - "show": false, - "password": false, - "multiline": false, - "value": false - }, - "prompt": { - "type": "BasePromptTemplate", - "required": true, - "placeholder": "", - "list": false, - "show": true, - "password": false, - "multiline": false - }, - "llm": { - "type": "BaseLanguageModel", - "required": true, - "placeholder": "", - "list": false, - "show": true, - "password": false, - "multiline": false - }, - "output_key": { - "type": "str", - "required": false, - "placeholder": "", - "list": false, - "show": false, - "password": true, - "multiline": false, - "value": "text" - } - }, - "description": "Chain to run queries against LLMs.", - "base_classes": [ - "Chain" - ] - }, - "id": "dndnode_1", - "value": null - }, - "positionAbsolute": { - "x": 644, - "y": 348 - } - }, - { - "width": 384, - "height": 351, - "id": "dndnode_4", - "type": "genericNode", - "position": { - "x": 1236, - "y": 39.59999999999957 - }, - "data": { - "type": "ZeroShotAgent", - "node": { - "template": { - "_type": "zero-shot-react-description", - "llm_chain": { - "type": "LLMChain", - "required": true, - "placeholder": "", - "list": false, - "show": true, - "password": false, - "multiline": false - }, - "allowed_tools": { - "type": "Tool", - "required": false, - "placeholder": "", - "list": true, - "show": true, - "password": false, - "multiline": false, - "value": null - }, - "return_values": { - "type": "str", - "required": false, - "placeholder": "", - "list": true, - "show": false, - "password": false, - "multiline": false, - "value": [ - "output" - ] - } - }, - "description": "Agent for the MRKL chain.", - "base_classes": [ - "Agent" - ] - }, - "id": "dndnode_4", - "value": null - }, - "positionAbsolute": { - "x": 1236, - "y": 39.59999999999957 - } - }, - { - "width": 384, - "height": 529, - "id": "dndnode_5", - "type": "genericNode", - "position": { - "x": 96, - "y": -299.2000000000003 - }, - "data": { - "type": "ZeroShotPrompt", - "node": { - "template": { - "_type": "zero_shot", - "prefix": { - "type": "str", - "required": false, - "placeholder": "", - "list": false, - "show": true, - "multiline": true, - "value": "Answer the following questions as best you can. You have access to the following tools:" - }, - "suffix": { - "type": "str", - "required": true, - "placeholder": "", - "list": false, - "show": true, - "multiline": true, - "value": "Begin!\n\nQuestion: {input}\nThought:{agent_scratchpad}" - }, - "format_instructions": { - "type": "str", - "required": false, - "placeholder": "", - "list": false, - "show": true, - "multiline": true, - "value": "Use the following format:\n\nQuestion: the input question you must answer\nThought: you should always think about what to do\nAction: the action to take, should be one of [{tool_names}]\nAction Input: the input to the action\nObservation: the result of the action\n... (this Thought/Action/Action Input/Observation can repeat N times)\nThought: I now know the final answer\nFinal Answer: the final answer to the original input question" - } - }, - "description": "Prompt template for Zero Shot Agent.", - "base_classes": [ - "BasePromptTemplate" - ] - }, - "id": "dndnode_5", - "value": null - }, - "selected": false, - "positionAbsolute": { - "x": 96, - "y": -299.2000000000003 - }, - "dragging": false - }, - { - "width": 384, - "height": 477, - "id": "dndnode_8", - "type": "genericNode", - "position": { - "x": 75, - "y": 328 - }, - "data": { - "type": "OpenAI", - "node": { - "template": { - "_type": "openai", - "cache": { - "type": "bool", - "required": false, - "placeholder": "", - "list": false, - "show": false, - "password": false, - "multiline": false, - "value": null - }, - "verbose": { - "type": "bool", - "required": false, - "placeholder": "", - "list": false, - "show": false, - "password": false, - "multiline": false, - "value": null - }, - "client": { - "type": "Any", - "required": false, - "placeholder": "", - "list": false, - "show": false, - "password": false, - "multiline": false, - "value": null - }, - "model_name": { - "type": "str", - "required": false, - "placeholder": "", - "list": false, - "show": true, - "password": false, - "multiline": false, - "value": "text-davinci-003", - "options": [ - "text-davinci-003", - "text-davinci-002" - ] - }, - "temperature": { - "type": "float", - "required": false, - "placeholder": "", - "list": false, - "show": true, - "password": false, - "multiline": false, - "value": 0.7 - }, - "max_tokens": { - "type": "int", - "required": false, - "placeholder": "", - "list": false, - "show": false, - "password": true, - "multiline": false, - "value": 256 - }, - "top_p": { - "type": "float", - "required": false, - "placeholder": "", - "list": false, - "show": false, - "password": false, - "multiline": false, - "value": 1 - }, - "frequency_penalty": { - "type": "float", - "required": false, - "placeholder": "", - "list": false, - "show": false, - "password": false, - "multiline": false, - "value": 0 - }, - "presence_penalty": { - "type": "float", - "required": false, - "placeholder": "", - "list": false, - "show": false, - "password": false, - "multiline": false, - "value": 0 - }, - "n": { - "type": "int", - "required": false, - "placeholder": "", - "list": false, - "show": false, - "password": false, - "multiline": false, - "value": 1 - }, - "best_of": { - "type": "int", - "required": false, - "placeholder": "", - "list": false, - "show": false, - "password": false, - "multiline": false, - "value": 1 - }, - "model_kwargs": { - "type": "dict[str, Any]", - "required": false, - "placeholder": "", - "list": false, - "show": false, - "password": false, - "multiline": false, - "value": null - }, - "openai_api_key": { - "type": "str", - "required": false, - "placeholder": "", - "list": false, - "show": true, - "password": true, - "multiline": false, - "value": "sk-" - }, - "batch_size": { - "type": "int", - "required": false, - "placeholder": "", - "list": false, - "show": false, - "password": false, - "multiline": false, - "value": 20 - }, - "request_timeout": { - "type": "Union[float, Tuple[float, float], NoneType]", - "required": false, - "placeholder": "", - "list": false, - "show": false, - "password": false, - "multiline": false, - "value": null - }, - "logit_bias": { - "type": "dict[str, float]", - "required": false, - "placeholder": "", - "list": false, - "show": false, - "password": false, - "multiline": false, - "value": null - }, - "max_retries": { - "type": "int", - "required": false, - "placeholder": "", - "list": false, - "show": false, - "password": false, - "multiline": false, - "value": 6 - }, - "streaming": { - "type": "bool", - "required": false, - "placeholder": "", - "list": false, - "show": false, - "password": false, - "multiline": false, - "value": false - } - }, - "description": "Generic OpenAI class that uses model name.", - "base_classes": [ - "BaseOpenAI", - "BaseLLM", - "BaseLanguageModel" - ] - }, - "id": "dndnode_8", - "value": null - }, - "selected": false, - "positionAbsolute": { - "x": 75, - "y": 328 - }, - "dragging": false - }, - { - "width": 384, - "height": 397, - "id": "dndnode_9", - "type": "genericNode", - "position": { - "x": 643, - "y": 824 - }, - "data": { - "type": "Serper Search", - "node": { - "template": { - "serper_api_key": { - "type": "str", - "required": true, - "list": false, - "show": true, - "placeholder": "", - "value": "---" - }, - "_type": "Serper Search" - }, - "name": "Serper Search", - "description": "A low-cost Google Search API. Useful for when you need to answer questions about current events. Input should be a search query.", - "base_classes": [ - "Tool" - ] - }, - "id": "dndnode_9", - "value": null - }, - "selected": true, - "positionAbsolute": { - "x": 643, - "y": 824 - }, - "dragging": false - } - ], - "edges": [ - { - "source": "dndnode_5", - "sourceHandle": "ZeroShotPrompt|dndnode_5|BasePromptTemplate", - "target": "dndnode_1", - "targetHandle": "BasePromptTemplate|prompt|dndnode_1", - "className": "animate-pulse", - "id": "reactflow__edge-dndnode_5ZeroShotPrompt|dndnode_5|BasePromptTemplate-dndnode_1BasePromptTemplate|prompt|dndnode_1" - }, - { - "source": "dndnode_1", - "sourceHandle": "LLMChain|dndnode_1|Chain", - "target": "dndnode_4", - "targetHandle": "LLMChain|llm_chain|dndnode_4", - "className": "animate-pulse", - "id": "reactflow__edge-dndnode_1LLMChain|dndnode_1|Chain-dndnode_4LLMChain|llm_chain|dndnode_4" - }, - { - "source": "dndnode_8", - "sourceHandle": "OpenAI|dndnode_8|BaseOpenAI|BaseLLM|BaseLanguageModel", - "target": "dndnode_1", - "targetHandle": "BaseLanguageModel|llm|dndnode_1", - "className": "animate-pulse", - "id": "reactflow__edge-dndnode_8OpenAI|dndnode_8|BaseOpenAI|BaseLLM|BaseLanguageModel-dndnode_1BaseLanguageModel|llm|dndnode_1" - }, - { - "source": "dndnode_9", - "sourceHandle": "Serper Search|dndnode_9|Tool", - "target": "dndnode_4", - "targetHandle": "Tool|allowed_tools|dndnode_4", - "className": "animate-pulse", - "id": "reactflow__edge-dndnode_9Serper Search|dndnode_9|Tool-dndnode_4Tool|allowed_tools|dndnode_4" - } - ], - "viewport": { - "x": 22.5, - "y": 42, - "zoom": 0.5 - } - }, - "chat": [ - { - "message": "Langflow. What is it?", - "isSend": true - }, - { - "message": "Langflow is a GUI for LangChain, designed with react-flow to provide an effortless way to experiment and prototype flows with drag-and-drop components and a chrome extension powered by GPT-3.", - "isSend": false, - "thought": "> Entering new AgentExecutor chain...\n I need to research what Langflow is.\nAction: Serper Search\nAction Input: \"What is Langflow?\"\nObservation: Researchers introduce LangFlow, a graphical user interface (GUI) for LangChain that simplifies testing and creation of smart applications. The drag-and-drop feature provides a quick and effortless way to experiment and prototype, and the built-in chat interface enables real-time ... LangFlow is a GUI for LangChain, designed with react-flow to provide an effortless way to experiment and prototype flows with drag-and-drop ... LangFlow is a GUI for LangChain, designed with react-flow to provide an effortless way to experiment and prototype flows with drag-and-drop components and a ... an open-source chrome extension powered by GPT-3 to get the explanation of a piece of code on any site (Stackoverflow, Github, etc). ChatGPT correctly identified Mona Lisa but failed to guess the cartoon character Michael was thinking of, suggesting Bugs Bunny holding a ... Introducing LangFlow! An open-source UI for. @LangChainAI. that enables seamless combination of multiple deep learning models to perform ... See student reviews, school photos, Chinese Mandarin courses, and housing options available at Langflow Education Centre (Macau, Macau) - Reviews - Language ... Longfellow Elementary students play on the playground during recess. Longfellow Elementary students pause for a photo during class.\nThought: Langflow is a GUI for LangChain, designed with react-flow to provide an effortless way to experiment and prototype flows with drag-and-drop components and a chrome extension powered by GPT-3.\nFinal Answer: Langflow is a GUI for LangChain, designed with react-flow to provide an effortless way to experiment and prototype flows with drag-and-drop components and a chrome extension powered by GPT-3.\n\n> Finished chain." - } - ] -} \ No newline at end of file +{"description":"","name":"BasicExample","id":"a53f9130-f2fa-4a3e-b22a-3856d946351a","data":{"nodes":[{"width":384,"height":267,"id":"dndnode_81","type":"genericNode","position":{"x":1030,"y":694},"data":{"type":"TimeTravelGuideChain","node":{"template":{"llm":{"required":true,"placeholder":"","show":true,"multiline":false,"password":false,"name":"llm","advanced":false,"type":"BaseLanguageModel","list":false},"memory":{"required":false,"placeholder":"","show":true,"multiline":false,"password":false,"name":"memory","advanced":false,"type":"BaseChatMemory","list":false},"_type":"TimeTravelGuideChain"},"description":"Time travel guide chain to be used in the flow.","base_classes":["LLMChain","BaseCustomChain","TimeTravelGuideChain","Chain","ConversationChain"]},"id":"dndnode_81","value":null},"selected":false,"positionAbsolute":{"x":1030,"y":694},"dragging":false},{"width":384,"height":597,"id":"dndnode_82","type":"genericNode","position":{"x":520,"y":732},"data":{"type":"OpenAI","node":{"template":{"cache":{"required":false,"placeholder":"","show":false,"multiline":false,"password":false,"name":"cache","advanced":false,"type":"bool","list":false},"verbose":{"required":false,"placeholder":"","show":false,"multiline":false,"password":false,"name":"verbose","advanced":false,"type":"bool","list":false},"callbacks":{"required":false,"placeholder":"","show":false,"multiline":false,"password":false,"name":"callbacks","advanced":false,"type":"langchain.callbacks.base.BaseCallbackHandler","list":true},"client":{"required":false,"placeholder":"","show":false,"multiline":false,"password":false,"name":"client","advanced":false,"type":"Any","list":false},"model_name":{"required":false,"placeholder":"","show":true,"multiline":false,"value":"text-davinci-003","password":false,"options":["text-davinci-003","text-davinci-002","text-curie-001","text-babbage-001","text-ada-001"],"name":"model_name","advanced":false,"type":"str","list":true},"temperature":{"required":false,"placeholder":"","show":true,"multiline":false,"value":0.7,"password":false,"name":"temperature","advanced":false,"type":"float","list":false},"max_tokens":{"required":false,"placeholder":"","show":true,"multiline":false,"value":256,"password":true,"name":"max_tokens","advanced":false,"type":"int","list":false},"top_p":{"required":false,"placeholder":"","show":false,"multiline":false,"value":1,"password":false,"name":"top_p","advanced":false,"type":"float","list":false},"frequency_penalty":{"required":false,"placeholder":"","show":false,"multiline":false,"value":0,"password":false,"name":"frequency_penalty","advanced":false,"type":"float","list":false},"presence_penalty":{"required":false,"placeholder":"","show":false,"multiline":false,"value":0,"password":false,"name":"presence_penalty","advanced":false,"type":"float","list":false},"n":{"required":false,"placeholder":"","show":false,"multiline":false,"value":1,"password":false,"name":"n","advanced":false,"type":"int","list":false},"best_of":{"required":false,"placeholder":"","show":false,"multiline":false,"value":1,"password":false,"name":"best_of","advanced":false,"type":"int","list":false},"model_kwargs":{"required":false,"placeholder":"","show":true,"multiline":false,"password":false,"name":"model_kwargs","advanced":true,"type":"code","list":false},"openai_api_key":{"required":false,"placeholder":"","show":true,"multiline":false,"value":"abc","password":true,"name":"openai_api_key","display_name":"OpenAI API Key","advanced":false,"type":"str","list":false},"openai_api_base":{"required":false,"placeholder":"","show":true,"multiline":false,"password":true,"name":"openai_api_base","advanced":false,"type":"str","list":false},"openai_organization":{"required":false,"placeholder":"","show":false,"multiline":false,"password":false,"name":"openai_organization","advanced":false,"type":"str","list":false},"batch_size":{"required":false,"placeholder":"","show":false,"multiline":false,"value":20,"password":false,"name":"batch_size","advanced":false,"type":"int","list":false},"request_timeout":{"required":false,"placeholder":"","show":false,"multiline":false,"password":false,"name":"request_timeout","advanced":false,"type":"float","list":false},"logit_bias":{"required":false,"placeholder":"","show":false,"multiline":false,"password":false,"name":"logit_bias","advanced":false,"type":"code","list":false},"max_retries":{"required":false,"placeholder":"","show":false,"multiline":false,"value":6,"password":false,"name":"max_retries","advanced":false,"type":"int","list":false},"streaming":{"required":false,"placeholder":"","show":false,"multiline":false,"value":false,"password":false,"name":"streaming","advanced":false,"type":"bool","list":false},"allowed_special":{"required":false,"placeholder":"","show":false,"multiline":false,"value":[],"password":false,"name":"allowed_special","advanced":false,"type":"Literal'all'","list":true},"disallowed_special":{"required":false,"placeholder":"","show":false,"multiline":false,"value":"all","password":false,"name":"disallowed_special","advanced":false,"type":"Literal'all'","list":false},"_type":"OpenAI"},"description":"Wrapper around OpenAI large language models.","base_classes":["BaseLLM","OpenAI","BaseOpenAI","BaseLanguageModel"]},"id":"dndnode_82","value":null},"selected":false,"positionAbsolute":{"x":520,"y":732},"dragging":false},{"width":384,"height":273,"id":"dndnode_83","type":"genericNode","position":{"x":512,"y":402},"data":{"type":"ConversationBufferMemory","node":{"template":{"chat_memory":{"required":false,"placeholder":"","show":false,"multiline":false,"password":false,"name":"chat_memory","advanced":false,"type":"BaseChatMessageHistory","list":false},"output_key":{"required":false,"placeholder":"","show":false,"multiline":false,"password":false,"name":"output_key","advanced":false,"type":"str","list":false},"input_key":{"required":false,"placeholder":"","show":false,"multiline":false,"password":false,"name":"input_key","advanced":false,"type":"str","list":false},"return_messages":{"required":false,"placeholder":"","show":false,"multiline":false,"password":false,"name":"return_messages","advanced":false,"type":"bool","list":false},"human_prefix":{"required":false,"placeholder":"","show":false,"multiline":false,"value":"Human","password":false,"name":"human_prefix","advanced":false,"type":"str","list":false},"ai_prefix":{"required":false,"placeholder":"","show":false,"multiline":false,"value":"AI","password":false,"name":"ai_prefix","advanced":false,"type":"str","list":false},"memory_key":{"required":false,"placeholder":"","show":true,"multiline":false,"value":"history","password":false,"name":"memory_key","advanced":false,"type":"str","list":false},"_type":"ConversationBufferMemory"},"description":"Buffer for storing conversation memory.","base_classes":["ConversationBufferMemory","BaseChatMemory","BaseMemory"]},"id":"dndnode_83","value":null},"selected":false,"positionAbsolute":{"x":512,"y":402},"dragging":false}],"edges":[{"source":"dndnode_82","sourceHandle":"OpenAI|dndnode_82|BaseLLM|OpenAI|BaseOpenAI|BaseLanguageModel","target":"dndnode_81","targetHandle":"BaseLanguageModel|llm|dndnode_81","className":"animate-pulse","id":"reactflow__edge-dndnode_82OpenAI|dndnode_82|BaseLLM|OpenAI|BaseOpenAI|BaseLanguageModel-dndnode_81BaseLanguageModel|llm|dndnode_81","selected":false},{"source":"dndnode_83","sourceHandle":"ConversationBufferMemory|dndnode_83|ConversationBufferMemory|BaseChatMemory|BaseMemory","target":"dndnode_81","targetHandle":"BaseChatMemory|memory|dndnode_81","className":"animate-pulse","id":"reactflow__edge-dndnode_83ConversationBufferMemory|dndnode_83|ConversationBufferMemory|BaseChatMemory|BaseMemory-dndnode_81BaseChatMemory|memory|dndnode_81"}],"viewport":{"x":1,"y":0,"zoom":0.5}}} \ No newline at end of file