feat: add thought to response
This commit is contained in:
parent
c0fde7ed9b
commit
c333f57a0c
3 changed files with 24 additions and 10 deletions
|
|
@ -3,6 +3,6 @@
|
||||||
poetry remove langchain
|
poetry remove langchain
|
||||||
docker build -t logspace/backend_build -f build.Dockerfile .
|
docker build -t logspace/backend_build -f build.Dockerfile .
|
||||||
VERSION=$(toml get --toml-path pyproject.toml tool.poetry.version)
|
VERSION=$(toml get --toml-path pyproject.toml tool.poetry.version)
|
||||||
docker build --build-arg VERSION=$VERSION -t logspace/langflow_backend:$VERSION .
|
docker build --build-arg VERSION=$VERSION -t ibiscp/langflow_backend:$VERSION .
|
||||||
# docker push logspace/langflow_backend:$VERSION
|
docker push ibiscp/langflow_backend:$VERSION
|
||||||
# poetry add --editable ../../../langchain
|
# poetry add --editable ../../../langchain
|
||||||
|
|
|
||||||
|
|
@ -8,6 +8,9 @@ from langchain.llms.loading import load_llm_from_config
|
||||||
|
|
||||||
from langchain.prompts.loading import load_prompt_from_config
|
from langchain.prompts.loading import load_prompt_from_config
|
||||||
from typing import Any
|
from typing import Any
|
||||||
|
import io
|
||||||
|
import contextlib
|
||||||
|
import re
|
||||||
|
|
||||||
|
|
||||||
# build router
|
# build router
|
||||||
|
|
@ -77,12 +80,12 @@ def get_load(data: dict[str, Any]):
|
||||||
type_list = get_type_list()
|
type_list = get_type_list()
|
||||||
|
|
||||||
# Substitute ZeroShotPromt with PromptTemplate
|
# Substitute ZeroShotPromt with PromptTemplate
|
||||||
for node in data['nodes']:
|
for node in data["nodes"]:
|
||||||
if node["data"]["type"] == "ZeroShotPrompt":
|
if node["data"]["type"] == "ZeroShotPrompt":
|
||||||
# Build Prompt Template
|
# Build Prompt Template
|
||||||
tools = [
|
tools = [
|
||||||
tool
|
tool
|
||||||
for tool in data['nodes']
|
for tool in data["nodes"]
|
||||||
if tool["type"] != "chatOutputNode"
|
if tool["type"] != "chatOutputNode"
|
||||||
and "Tool" in tool["data"]["node"]["base_classes"]
|
and "Tool" in tool["data"]["node"]["base_classes"]
|
||||||
]
|
]
|
||||||
|
|
@ -104,17 +107,28 @@ def get_load(data: dict[str, Any]):
|
||||||
if extracted_json["_type"] in type_list["agents"]:
|
if extracted_json["_type"] in type_list["agents"]:
|
||||||
loaded = load_agent_executor_from_config(extracted_json)
|
loaded = load_agent_executor_from_config(extracted_json)
|
||||||
|
|
||||||
return {"result": loaded.run(message)}
|
with io.StringIO() as output_buffer, contextlib.redirect_stdout(output_buffer):
|
||||||
|
result = loaded.run(message)
|
||||||
|
thought = output_buffer.getvalue()
|
||||||
|
|
||||||
elif extracted_json["_type"] in type_list["chains"]:
|
elif extracted_json["_type"] in type_list["chains"]:
|
||||||
loaded = load_chain_from_config(extracted_json)
|
loaded = load_chain_from_config(extracted_json)
|
||||||
|
|
||||||
return {"result": loaded.run(message)}
|
with io.StringIO() as output_buffer, contextlib.redirect_stdout(output_buffer):
|
||||||
|
result = loaded.run(message)
|
||||||
|
thought = output_buffer.getvalue()
|
||||||
|
|
||||||
elif extracted_json["_type"] in type_list["llms"]:
|
elif extracted_json["_type"] in type_list["llms"]:
|
||||||
loaded = load_llm_from_config(extracted_json)
|
loaded = load_llm_from_config(extracted_json)
|
||||||
|
|
||||||
return {"result": loaded(message)}
|
with io.StringIO() as output_buffer, contextlib.redirect_stdout(output_buffer):
|
||||||
|
result = loaded(message)
|
||||||
|
thought = output_buffer.getvalue()
|
||||||
else:
|
else:
|
||||||
return {"result": "Error: Type should be either agent, chain or llm"}
|
result = "Error: Type should be either agent, chain or llm"
|
||||||
|
thought = ""
|
||||||
|
|
||||||
|
return {"result": result, "thought": re.sub(r'\x1b\[([0-9,A-Z]{1,2}(;[0-9,A-Z]{1,2})?)?[m|K]', '', thought).strip()}
|
||||||
|
|
||||||
|
|
||||||
def build_prompt_template(prompt, tools):
|
def build_prompt_template(prompt, tools):
|
||||||
|
|
|
||||||
|
|
@ -2,5 +2,5 @@
|
||||||
|
|
||||||
VERSION="0.1.0"
|
VERSION="0.1.0"
|
||||||
docker build -t logspace/frontend_build -f build.Dockerfile .
|
docker build -t logspace/frontend_build -f build.Dockerfile .
|
||||||
docker build --build-arg VERSION=$VERSION -t logspace/langflow_frontend:$VERSION .
|
docker build --build-arg VERSION=$VERSION -t ibiscp/langflow_frontend:$VERSION .
|
||||||
# docker push logspace/langflow_frontend:$VERSION
|
docker push ibiscp/langflow_frontend:$VERSION
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue