Python 交互式环境
有时,对于复杂的计算,与其让 LLM 直接生成答案,不如让 LLM 生成代码来计算答案,然后运行该代码以获得答案。为了方便实现这一点,我们提供了一个简单的 Python 交互式环境来执行命令。
此接口只会返回打印出的内容——因此,如果您想用它来计算答案,请确保让它打印出答案。
警告
Python 交互式环境可以在主机上执行任意代码(例如,删除文件、发起网络请求)。请谨慎使用。
有关更多通用安全指南,请参阅 https://python.langchain.ac.cn/docs/security/。
from langchain_core.tools import Tool
from langchain_experimental.utilities import PythonREPL
API 参考:Tool | PythonREPL
python_repl = PythonREPL()
python_repl.run("print(1+1)")
Python REPL can execute arbitrary code. Use with caution.
'2\n'
# You can create the tool to pass to an agent
repl_tool = Tool(
name="python_repl",
description="A Python shell. Use this to execute python commands. Input should be a valid python command. If you want to see the output of a value, you should print it out with `print(...)`.",
func=python_repl.run,
)