#No default IOStream has been set, defaulting to IOConsole.
1 messages · Page 1 of 1 (latest)
Have the same issue, anyone can help?
I think it's new to the latest version, but cannot track down where in the source code it originates from
yup, started getting myself today and just came here to see whats going on.
I think possibly this was supposed to fix things, but it's part of the release, so apparently not: https://github.com/microsoft/autogen/commit/21a7eb31159a3fdbfa13e1d4d3daa828a716ce7f
actually, my bad, that's exactly where it's from! logger.warning is issuing it.
So to fix it, in the calling script that initiates chat, you just grab the autogen logger and set the error level higher:
import logging
logger = logging.getLogger("autogen")
logger.setLevel(logging.ERROR)
and it looks like the fix is already in the process of being merged: https://github.com/microsoft/autogen/pull/2207
the new iostream protocol is actually really useful, its a lot easier to format your inputs and output, i wrote a small piece on it since i was alreadu using some variation of this and found it useful: https://dragoscampean.medium.com/enhancing-your-autogen-experience-a-guide-to-beautifying-terminal-inputs-outputs-f93685f27740
that's awesome and very helpful for my current use case! it does seem to break "stream": True a little bit, but that's an acceptable price to pay 🙂
glad it was useful
@vagrant egret do you enable streaming, and see the answer from the LLM in the terminal as it's being generated ? like you see on the chatgpt site for example ?
i tried to do this at one point and didn't succeed so i just added a small loading icon with rich to make the wait more bearable like a noob
It basically breaks at each space. I enable streaming, see green text (as before, with default IOStream), but this time it's broken up per space
...and then, when it's finished, it also puts the entire (richly formatted) text at the end
i see, i will try to look into it but i dont think i';ll get the change before leaving on holiday, if you find a solution in the meantime pls post it 😄
No worries 🙂 I'm curious - is the loading icon a rich.Console.status thing? If so, at what point do you invoke it? I tried injection it into RichIOStream.print (with self.console.status("Retrieving LLM Response", spinner="dots"): enclosing the for-loop block that collects processed_args), but it's not showing up at all.
...I recognize that making the CLI experience more bearable is probably an antipattern because what I actually need to learn is Websockets, but I'm a sucker for nice console animations
i am the same, so i actually create a decorator function -> https://github.com/dragosMC91/AutoGen-Experiments/blob/main/utils/prompt_utils.py#L238 , naming is not good because it's not a progress bar but a spinner, but it used to be a progress bar xD
and then i just override autogen's autogen.ConversableAgent.generate_oai_reply -> https://github.com/dragosMC91/AutoGen-Experiments/blob/main/agents/custom_agents.py#L68
are you running from IDE? I had that warning every time I debug with IDE
the "No default IOStream has been set, defaulting to IOConsole." warning you mean ? i dont think it matters which terminal you're running from, you will see it
but until the fix is deployed, you can goto to your pyenv autogen install location, so for example /Users/you/.pyenv/versions/3.11.8/envs/autogen/lib/python3.11/site-packages/autogen/io/base.py
and make the code change as shown here: https://github.com/microsoft/autogen/pull/2207/files