Find answers from the community

Updated last year

Alright, so I am comparing

At a glance
Alright, so I am comparing SQLAutoVectorQueryEngine to using the OpenAIAgent class. Even when I pass in the SQLAutoVectorQueryEngine as a tool to the OpenAI agent, the OpenAI agent doesn't perform as well. Any insights into the differences between the two? How can I narrow down why one performs better than the other?

From what I can see, the OpenAI agent is actually trying to answer the query itself and then passing the query into the tool. Which is not what I want ๐Ÿ˜ฎโ€๐Ÿ’จ I would rather the chatbot just allow the tool to create the query in the first place.

Also, if I just want a chatbot, but with the accuracy of the SQLAutoVectorQueryEngine, do I pass in an agent as one of its tools? That will help in the cases the user is chatting without asking for anything needed in the vector or sql databases
a
2 comments
Found this blog post, seems to be addressing what I'm talking about: https://blog.llamaindex.ai/dumber-llm-agents-need-more-constraints-and-better-tools-17a524c59e12

Anybody else's insights though in how to handle chat functionality + routing would be great though
For now the best solution seems to be using a FunctionTool to wrap the router and giving that as a tool to the Agent. Then it can decide when to use it or not. Please let me know if anyone else has a better approach, thanks!
Add a reply
Sign up and join the conversation on Discord