我正在尝试从 Seaborn 的线图中完全删除图例。2x2 子图中包含三个线图,每个线图的调用方式如下:
g = sns.lineplot(data=df, dashes=False, ax=axs[0,1])
更具体地说,我想删除三个线图中每一个中的图例,然后使用 2x2 图中的第四个区域来显示图例。任何建议表示赞赏!
我正在尝试为 R 中的逻辑变量创建一个“隐含”运算符,以使命题演算更容易。但是,它似乎与否定运算符一起玩得并不好。正如此处的最后 4 行所示,我必须将取反变量括在括号中才能使蕴涵运算符正常工作。
我怀疑运算符优先级是问题,但我不确定。从我读到的内容来看,没有办法改变中缀运算符的优先级。有没有一种方法可以重新定义,implies()
以便(!q) %->% (!p)
不需要括号?
> implies <- function(p, q) !p | q
> "%->%" <- implies
>
> p <- c(TRUE, TRUE, FALSE, FALSE)
> q <- c(TRUE, FALSE, TRUE, FALSE)
> p %->% q
[1] TRUE FALSE TRUE TRUE
> !q %->% !p
[1] TRUE FALSE FALSE FALSE
> (!q) %->% !p
[1] TRUE FALSE TRUE TRUE
Run Code Online (Sandbox Code Playgroud) 我正在尝试LangChain的AgentType.CHAT_ZERO_SHOT_REACT
代理。从它的名字来看,我认为这是一个用于聊天的代理,我已经给了它内存,但它似乎无法访问它的内存。我还需要做什么才能访问它的内存?或者我是否错误地认为该代理可以处理聊天?
这是我的代码和示例输出:
llm = ChatOpenAI(model_name="gpt-4",
temperature=0)
tools = load_tools(["llm-math", "wolfram-alpha", "wikipedia"], llm=llm)
memory = ConversationBufferMemory(memory_key="chat_history")
agent_test = initialize_agent(
tools=tools,
llm=llm,
agent=AgentType.CHAT_ZERO_SHOT_REACT_DESCRIPTION,
handle_parsing_errors=True,
memory=memory,
verbose=True
)
Run Code Online (Sandbox Code Playgroud)
>>> agent_test.run("What is the height of the empire state building?")
'The Empire State Building stands a total of 1,454 feet tall, including its antenna.'
>>> agent_test.run("What was the last question I asked?")
"I'm sorry, but I can't provide the information you're looking for."
Run Code Online (Sandbox Code Playgroud) 我正在尝试编写一个函数,该函数将使用 AST 来确定某个字符串是否已被硬编码到打印函数调用中。例如,如果这是整个 Python 文件:
print("hard coded")
Run Code Online (Sandbox Code Playgroud)
我得到的树如下:
with open(filename, 'r') as f:
tree = ast.parse(f.read())
nodes = [node for node in ast.walk(tree)]
Run Code Online (Sandbox Code Playgroud)
现在nodes
包含[<_ast.Module object at 0x7fa250286150>, <_ast.Expr object at 0x7fa250286050>, <_ast.Call object at 0x7fa2502642d0>, <_ast.Name object at 0x7fa228014610>, <_ast.Str object at 0x7fa228014710>, <_ast.Load object at 0x7fa2280080d0>]
通过测试 attrs 我可以发现nodes[2]
有一个.func.id
and nodes[2].func.id == 'print'
,所以这是我的打印命令。但是我如何找到传递给这个打印命令的参数呢?硬编码字符串位于ast.Str
列表索引 4 处出现的对象中,但我需要专门确定该字符串已传递给打印,而不仅仅是该字符串出现在文件中。