Spaces:
Paused
Paused
Download backend/open_webui/utils/response.py from coteerratu/open-webui: direct link, hf CLI and curl.
- Browser
- Download file 982 Bytes
-
https://huggingface.co/spaces/coteerratu/open-webui/resolve/main/backend/open_webui/utils/response.py
- Command line
-
hf download hf://spaces/coteerratu/open-webui/backend/open_webui/utils/response.py
-
curl -L -o response.py https://huggingface.co/spaces/coteerratu/open-webui/resolve/main/backend/open_webui/utils/response.py
982 Bytes
| import json | |
| from open_webui.utils.misc import ( | |
| openai_chat_chunk_message_template, | |
| openai_chat_completion_message_template, | |
| ) | |
| def convert_response_ollama_to_openai(ollama_response: dict) -> dict: | |
| model = ollama_response.get("model", "ollama") | |
| message_content = ollama_response.get("message", {}).get("content", "") | |
| response = openai_chat_completion_message_template(model, message_content) | |
| return response | |
| async def convert_streaming_response_ollama_to_openai(ollama_streaming_response): | |
| async for data in ollama_streaming_response.body_iterator: | |
| data = json.loads(data) | |
| model = data.get("model", "ollama") | |
| message_content = data.get("message", {}).get("content", "") | |
| done = data.get("done", False) | |
| data = openai_chat_chunk_message_template( | |
| model, message_content if not done else None | |
| ) | |
| line = f"data: {json.dumps(data)}\n\n" | |
| yield line | |
| yield "data: [DONE]\n\n" | |