I have been building Assistants and Agents for about 3 years now (since GPT-3 came out). Ask away

I remember the day GPT-3 was released → I spent the entire night building simple use cases.

I never looked back.

90% of the time, I still use OpenAI.

I want to help as many of you as I can. Ask me anything on the API, Assistants, building Agents etc.

4 Likes

Hmmm … i think it would be better for the structure of the forum for you to respond spontaneously to different Topics that come up in Latest, as opposed to turning this Topic into a bikeshed of unrelated questions …

4 Likes

Thank you. I appreciate the response. Just created it to see if I can be generally helpful (on top of helping in the thread - which I plan on jumping back into).

1 Like

I would just say: go to it, see which Topics you can contribute to! :rocket:

2 Likes

Hi, welcome to the community!

You don’t have to wait for someone to ask you a question directly.

You can check out API, Bugs, Prompting… categories, for example, where you’ll find lots of questions. Some haven’t been answered yet, and others have replies but no real solution so far.

Thanks for helping out in advance!

3 Likes

What’s your pattern for explaining a tool to the agent? What’s your logic around validation and retrying?

Great questions.

On Pattern
This is what I do:

  • Along with my main prompt, I’d say, call Tool X
If the user responds with a LinkedIn URL, call the 'LinkedIn Scraping Tool'
  • At the end of the prompt, I add a list of Tools (You have access)
You have access to the following Tools.
LinkedIn Scraping Tool: Use this tool when the user has provided their LinkedIn URL. If you are given multiple URLs, call the tool multiple times. 

Summary:

  • list your prompt as usual but add the tool name in between.
  • at the very end, give the list of tools and what it needs to use

On Validation
On almost all the cases, I do the validation purely at the prompt level.

On Retry
At the tool level, I will define an error scenario. So, if it was a scraper, return ERROR if the LinkedIn account was wrong or the scraper is unable to access it.

Following the above example:

You have access to the following Tools.
LinkedIn Scraping Tool: Use this tool when the user has provided their LinkedIn URL. If you are given multiple URLs, call the tool multiple times. If you get a response as ERROR, let the user know and suggest the next step.

Hmmm … this is redundant. The LLM will have already been given a list of tools using the tools parameter:

https://platform.openai.com/docs/guides/function-calling

You do not need to duplicate this in additional prompting (though it may help to emphasise the assitant has access to tools in general in the system/developer prompt)

You are just wasting tokens here and/or not using the API as you should.

2 Likes

True. I would be wasting tokens.

Just a pattern that I use, which has given me the best output. You can be granular in your description on the tools, but nothing beats clarifying in your system prompt which one to use.

This is even better, if you have say:
a) an order in which you want the tools to be called
b) when you have similar tools, but where they vary in use.

I will not use this if I have just 2 tools/functions calls.

Hope this thread helps you @Mikhail_S

From your experience what is the best way to explore a hierarchical topic like a graph to grab the complete context but not more?

Please write it in your own words. ChatGPT really can’t solve it. Comes up with generic nonsense and theories that are 90% wrong obviously.

Thanks for the generous offer to help—love the enthusiasm!

Just a quick note: the forum works best when questions and answers are shared in dedicated topics, so others can find and follow them more easily. Instead of collecting everything here, feel free to jump into existing threads or start new ones for specific topics.

Appreciate your contributions!

4 Likes