| def get_clean_text(content): |
| """ |
| Извлекает чистый текст из любого формата (str, dict, list). |
| Поддерживает: |
| - Простые строки |
| - Gradio формат: {'text': '...'} |
| - OpenAI/Zed формат: [{'type': 'text', 'text': '...'}] |
| """ |
| if content is None: |
| return "" |
|
|
| |
| if isinstance(content, str): |
| return content |
|
|
| |
| if isinstance(content, dict): |
| return content.get("text", "") |
|
|
| |
| if isinstance(content, list): |
| text_parts = [] |
| for item in content: |
| if isinstance(item, str): |
| text_parts.append(item) |
| elif isinstance(item, dict): |
| |
| text_parts.append(item.get("text", "")) |
| else: |
| text_parts.append(str(item)) |
| return "".join(text_parts) |
|
|
| |
| return str(content) |
|
|