microsoft / autogen

A programming framework for agentic AI 🤖
https://microsoft.github.io/autogen/
Creative Commons Attribution 4.0 International
34.1k stars 4.93k forks source link

[Bug]: Response data not available in Sequential chats, except for the first response #2644

Open krishnashed opened 6 months ago

krishnashed commented 6 months ago

Describe the bug

After enabling the logging using: logging_session_id = autogen.runtime_logging.start(config={"dbname": "execution_logs.db"})

we are only able to see the first response message, image

rather than having a response for each chat message in request. Gist

Steps to reproduce

This is my code of Sequential chats: https://gist.github.com/krishnashed/4ee198028895c0828158889a711b30f0

It creates a file called execution_logs.db

The response values for each message in request is missing, only the first response has a message. Also the cost calculation for entire groupchat is wrong.

Also the start_time and end_time dont seem to be correct, i think even that is start and end time for the first request call, not for the entire chat. ex: start_time 2024-05-10 10:00:25.214893 end_time 2024-05-10 10:00:30.203927

just has difference of 5s, the step in sequential chat doesnt end in 5seconds

Expected Behavior

It is expected that we get response objects of reach request, and the cost calculation happens accordingly

ekzhu commented 6 months ago

Thanks! @krishnashed can you check if it is caused by GPTAssistantAgent is not currently logged? If that's the case we can change this issue to be about logging and GTPAssistantAgent

krishnashed commented 6 months ago

@ekzhu i confirm this issue only happens with GPTAssistant

krishnashed commented 6 months ago

@ekzhu I had a doubt, while using when using ConversableAgent, Gist

for the logs generated in the .db file i.e image

why do the entries from 1-5, donot have "Write tests for add todo functionality. Add all the code in structured format in /workspaces/autogen/project. \nMake sure to write the tests completely, donot leave the tests empty or incomplete\n" which is the task message for GroupChat, but they have the system_message of ConversableAgent as their first entry. Dont we pass the task message of GroupChat to the openai call being made, atleast in the first call (1st entry), but it doesnt get included.

ekzhu commented 6 months ago

Dont we pass the task message of GroupChat to the openai call being made, atleast in the first call (1st entry), but it doesnt get included.

The group chat manager uses the task message when selecting the next speaker.