-
Notifications
You must be signed in to change notification settings - Fork 665
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Unknown recipient exception #307
Comments
you can use plugin test to verify code exection |
From the error message, I can see that the response of LLM has the |
THANKS FOR YOUR APPLY! 1、Response to "start a new session and retry or test a different model to see if this is constant.": 2、Respose to " These issues are typically caused due to the capability of the model used.":
sudo docker run -it
2024-04-17 21:46:39 - HTTP Request: POST https://open.bigmodel.cn/api/paas/v4/chat/completions "HTTP/1.1 200 " df, description = sql_pull_mysql_data("显示产业工人项目") The execution of the generated python code above has failed During execution, the following messages were logged: File /usr/local/lib/python3.10/site-packages/pandas/compat/_optional.py:135 in import_optional_dependency File /usr/local/lib/python3.10/importlib/init.py:126 in import_module File :1050 in _gcd_import File :1027 in _find_and_load File :1004 in _find_and_load_unlocked ModuleNotFoundError: No module named 'tabulate' During handling of the above exception, another exception occurred: Traceback (most recent call last): Cell In[1], line 1 File /tmp/tmpwxhr90fi/sql_pull_mysql_data.py:28 in call File /usr/local/lib/python3.10/site-packages/pandas/util/_decorators.py:333 in wrapper File /usr/local/lib/python3.10/site-packages/pandas/core/frame.py:2983 in to_markdown File /usr/local/lib/python3.10/site-packages/pandas/compat/_optional.py:138 in import_optional_dependency ImportError: Missing optional dependency 'tabulate'. Use pip or conda to install tabulate. (omit another round output) 2.2、I remove the TaskWeaver docker container , then run a new TaskWeaver container based on LLM zhipuai, pip install tabulate, open a new Chrome browser, it has the result "Exception: Unknown recipient sql_pull_mysql_data" as the same above.
3、Will sessions affect each other? Is the session information stored in the project/workspace/sessions directory referenced as context in the current session? |
Thanks for the detailed experiements. When I said 'a new session', I mean you just need to create a new session by clicking the web page to create a new one, not necessary to remove and download the container again, which need more effort. From your observations, the 2.1 looks good except that the missing dependency issue. The key part is that the LLM output (shown below) contains the
I don't know why this happens so frequently and we haven't seen this error before using GPT3.5 or GPT4. We don't have access to other models so not able to try them. One thing you can check is the prompt inside the project folder, i.e., |
Hi liqul, I have got the same error Unknown recipient with the plugin name after I recently upgraded the model to gpt-4o-2024-05-13-128k-4k. So I gurss it's not due to the capacity of the model itself. |
Could you share more details? When you say 'recipent', I assume it is a role instead of a plugin. |
Thanks for your reply! Yes, the planner should invoke the code intepreter then run the plugin. but the planner takes the plugin name as a role which doesn't exist. Error: planner should invoke data_retrieval, but data_retrieval is a plugin not a role. |
This is indeed quite unusual. In order to debug this issue, we need to understand more details of your settings. Could you please share the prompt of the planner before you running into that problem? It is located under project/workspace/sessions/session_id/planner_prompt_xxx.json. With this log file, we can know the input to the LLM and figure out why the planner mistreat the plugin as a role. It is quite rare today that the model such as GPT4o makes this mistake. |
Hi liqul, Thanks for the tips! I found a workaround fix that is to explicitly tell the planner 'send_to' must not be any plugin name in planner_prompt.yaml. |
Great to know the problem has gone. |
Hi MingYHou, Best regards! |
1、Docker host operating system:ubuntun 22.04 desktop
2、Run TaskWeaver using the All-in-One Docker Image:
3、plugin file: sql_pull_mysql_data.py
4、plugin file: sql_pull_mysql_data.yaml
5、Installing pymysql in the Docker container
6、When asking “显示产业工人项目”,Taskweaver execute the plugin sql_pull_mysql_data, then the backend execption logs:
The text was updated successfully, but these errors were encountered: