Download init from Junkeeaa/autogen_demo: direct link, hf CLI and curl.
- Browser
- Download file 2.46 kB
-
https://huggingface.co/Junkeeaa/autogen_demo/resolve/main/init
- Command line
-
hf download hf://Junkeeaa/autogen_demo/init
-
curl -L -o init https://huggingface.co/Junkeeaa/autogen_demo/resolve/main/init
2.46 kB
| # Initialize Agents | |
| def initialize_agents(config_list, docs_path=None): | |
| ... | |
| return assistant, ragproxyagent | |
| # Initialize Chat | |
| def initiate_chat(config_list, problem, queue, n_results=3): | |
| ... | |
| assistant.reset() | |
| try: | |
| ragproxyagent.a_initiate_chat( | |
| assistant, problem=problem, silent=False, n_results=n_results | |
| ) | |
| messages = ragproxyagent.chat_messages | |
| messages = [messages[k] for k in messages.keys()][0] | |
| messages = [m["content"] for m in messages if m["role"] == "user"] | |
| print("messages: ", messages) | |
| except Exception as e: | |
| messages = [str(e)] | |
| queue.put(messages) | |
| # Wrap AutoGen part into a function | |
| def chatbot_reply(input_text): | |
| """Chat with the agent through terminal.""" | |
| queue = mp.Queue() | |
| process = mp.Process( | |
| target=initiate_chat, | |
| args=(config_list, input_text, queue), | |
| ) | |
| process.start() | |
| try: | |
| messages = queue.get(timeout=TIMEOUT) | |
| except Exception as e: | |
| messages = [str(e) if len(str(e)) > 0 else "Invalid Request to OpenAI, please check your API keys."] | |
| finally: | |
| try: | |
| process.terminate() | |
| except: | |
| pass | |
| return messages | |
| ... | |
| # Set up UI with Gradio | |
| with gr.Blocks() as demo: | |
| ... | |
| assistant, ragproxyagent = initialize_agents(config_list) | |
| chatbot = gr.Chatbot( | |
| [], | |
| elem_id="chatbot", | |
| bubble_full_width=False, | |
| avatar_images=(None, (os.path.join(os.path.dirname(__file__), "autogen.png"))), | |
| # height=600, | |
| ) | |
| txt_input = gr.Textbox( | |
| scale=4, | |
| show_label=False, | |
| placeholder="Enter text and press enter", | |
| container=False, | |
| ) | |
| with gr.Row(): | |
| txt_model = gr.Dropdown( | |
| label="Model", | |
| choices=[ | |
| "gpt-4", | |
| "gpt-35-turbo", | |
| "gpt-3.5-turbo", | |
| ], | |
| allow_custom_value=True, | |
| value="gpt-35-turbo", | |
| container=True, | |
| ) | |
| txt_oai_key = gr.Textbox( | |
| label="OpenAI API Key", | |
| placeholder="Enter key and press enter", | |
| max_lines=1, | |
| show_label=True, | |
| value=os.environ.get("OPENAI_API_KEY", ""), | |
| container=True, | |
| type="password", | |
| ) | |
| ... | |
| clear = gr.ClearButton([txt_input, chatbot]) | |
| ... | |
| if __name__ == "__main__": | |
| demo.launch(share=True) |