llms-py 3.0.9__tar.gz → 3.0.11__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {llms_py-3.0.9 → llms_py-3.0.11}/PKG-INFO +1 -1
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/app/db.py +2 -2
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/providers/anthropic.py +9 -1
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/main.py +203 -121
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/ui/ai.mjs +1 -1
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/ui/modules/chat/ChatBody.mjs +82 -71
- {llms_py-3.0.9 → llms_py-3.0.11}/llms_py.egg-info/PKG-INFO +1 -1
- {llms_py-3.0.9 → llms_py-3.0.11}/llms_py.egg-info/SOURCES.txt +1 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/pyproject.toml +1 -1
- {llms_py-3.0.9 → llms_py-3.0.11}/setup.py +1 -1
- llms_py-3.0.11/tests/test_interleaved_thinking.py +60 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/tests/test_provider_config.py +0 -1
- {llms_py-3.0.9 → llms_py-3.0.11}/LICENSE +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/MANIFEST.in +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/README.md +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/__init__.py +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/__main__.py +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/db.py +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/analytics/ui/index.mjs +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/app/README.md +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/app/__init__.py +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/app/ui/Recents.mjs +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/app/ui/index.mjs +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/app/ui/threadStore.mjs +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/core_tools/CALCULATOR.md +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/core_tools/__init__.py +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/core_tools/ui/codemirror/addon/edit/closebrackets.js +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/core_tools/ui/codemirror/addon/edit/closetag.js +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/core_tools/ui/codemirror/addon/edit/continuelist.js +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/core_tools/ui/codemirror/addon/edit/matchbrackets.js +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/core_tools/ui/codemirror/addon/edit/matchtags.js +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/core_tools/ui/codemirror/addon/edit/trailingspace.js +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/core_tools/ui/codemirror/addon/selection/active-line.js +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/core_tools/ui/codemirror/addon/selection/mark-selection.js +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/core_tools/ui/codemirror/addon/selection/selection-pointer.js +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/core_tools/ui/codemirror/codemirror.css +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/core_tools/ui/codemirror/codemirror.js +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/core_tools/ui/codemirror/doc/docs.css +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/core_tools/ui/codemirror/doc/source_sans.woff +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/core_tools/ui/codemirror/mode/clike/clike.js +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/core_tools/ui/codemirror/mode/javascript/index.html +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/core_tools/ui/codemirror/mode/javascript/javascript.js +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/core_tools/ui/codemirror/mode/javascript/typescript.html +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/core_tools/ui/codemirror/mode/python/python.js +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/core_tools/ui/codemirror/theme/dracula.css +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/core_tools/ui/codemirror/theme/mocha.css +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/core_tools/ui/index.mjs +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/gallery/README.md +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/gallery/__init__.py +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/gallery/db.py +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/gallery/ui/index.mjs +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/README.md +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/__init__.py +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/README.md +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/contrib/auto-render.js +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/contrib/auto-render.min.js +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/contrib/auto-render.mjs +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/contrib/copy-tex.js +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/contrib/copy-tex.min.js +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/contrib/copy-tex.mjs +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/contrib/mathtex-script-type.js +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/contrib/mathtex-script-type.min.js +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/contrib/mathtex-script-type.mjs +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/contrib/mhchem.js +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/contrib/mhchem.min.js +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/contrib/mhchem.mjs +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/contrib/render-a11y-string.js +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/contrib/render-a11y-string.min.js +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/contrib/render-a11y-string.mjs +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_AMS-Regular.ttf +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_AMS-Regular.woff +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_AMS-Regular.woff2 +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Caligraphic-Bold.ttf +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Caligraphic-Bold.woff +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Caligraphic-Bold.woff2 +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Caligraphic-Regular.ttf +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Caligraphic-Regular.woff +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Caligraphic-Regular.woff2 +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Fraktur-Bold.ttf +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Fraktur-Bold.woff +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Fraktur-Bold.woff2 +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Fraktur-Regular.ttf +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Fraktur-Regular.woff +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Fraktur-Regular.woff2 +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Main-Bold.ttf +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Main-Bold.woff +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Main-Bold.woff2 +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Main-BoldItalic.ttf +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Main-BoldItalic.woff +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Main-BoldItalic.woff2 +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Main-Italic.ttf +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Main-Italic.woff +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Main-Italic.woff2 +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Main-Regular.ttf +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Main-Regular.woff +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Main-Regular.woff2 +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Math-BoldItalic.ttf +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Math-BoldItalic.woff +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Math-BoldItalic.woff2 +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Math-Italic.ttf +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Math-Italic.woff +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Math-Italic.woff2 +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_SansSerif-Bold.ttf +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_SansSerif-Bold.woff +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_SansSerif-Bold.woff2 +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_SansSerif-Italic.ttf +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_SansSerif-Italic.woff +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_SansSerif-Italic.woff2 +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_SansSerif-Regular.ttf +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_SansSerif-Regular.woff +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_SansSerif-Regular.woff2 +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Script-Regular.ttf +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Script-Regular.woff +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Script-Regular.woff2 +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Size1-Regular.ttf +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Size1-Regular.woff +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Size1-Regular.woff2 +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Size2-Regular.ttf +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Size2-Regular.woff +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Size2-Regular.woff2 +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Size3-Regular.ttf +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Size3-Regular.woff +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Size3-Regular.woff2 +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Size4-Regular.ttf +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Size4-Regular.woff +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Size4-Regular.woff2 +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Typewriter-Regular.ttf +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Typewriter-Regular.woff +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/fonts/KaTeX_Typewriter-Regular.woff2 +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/index.mjs +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/katex-swap.css +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/katex-swap.min.css +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/katex.css +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/katex.js +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/katex.min.css +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/katex.min.js +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/katex.min.mjs +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/katex/ui/katex.mjs +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/providers/__init__.py +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/providers/cerebras.py +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/providers/chutes.py +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/providers/google.py +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/providers/nvidia.py +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/providers/openai.py +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/providers/openrouter.py +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/providers/zai.py +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/system_prompts/README.md +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/system_prompts/__init__.py +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/system_prompts/ui/index.mjs +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/system_prompts/ui/prompts.json +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/tools/__init__.py +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/extensions/tools/ui/index.mjs +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/index.html +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/llms.json +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/providers-extra.json +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/providers.json +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/ui/App.mjs +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/ui/app.css +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/ui/ctx.mjs +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/ui/fav.svg +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/ui/index.mjs +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/ui/lib/chart.js +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/ui/lib/charts.mjs +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/ui/lib/color.js +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/ui/lib/highlight.min.mjs +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/ui/lib/idb.min.mjs +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/ui/lib/marked.min.mjs +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/ui/lib/servicestack-client.mjs +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/ui/lib/servicestack-vue.mjs +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/ui/lib/vue-router.min.mjs +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/ui/lib/vue.min.mjs +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/ui/lib/vue.mjs +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/ui/markdown.mjs +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/ui/modules/chat/SettingsDialog.mjs +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/ui/modules/chat/index.mjs +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/ui/modules/icons.mjs +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/ui/modules/layout.mjs +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/ui/modules/model-selector.mjs +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/ui/tailwind.input.css +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/ui/typography.css +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms/ui/utils.mjs +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms_py.egg-info/dependency_links.txt +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms_py.egg-info/entry_points.txt +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms_py.egg-info/not-zip-safe +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms_py.egg-info/requires.txt +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/llms_py.egg-info/top_level.txt +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/requirements.txt +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/setup.cfg +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/tests/test_async.py +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/tests/test_config.py +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/tests/test_extensions.py +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/tests/test_gemini_upload.py +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/tests/test_integration.py +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/tests/test_provider_checks.py +0 -0
- {llms_py-3.0.9 → llms_py-3.0.11}/tests/test_utils.py +0 -0
|
@@ -528,9 +528,9 @@ class AppDB:
|
|
|
528
528
|
with self.db.create_writer_connection() as conn:
|
|
529
529
|
conn.execute(
|
|
530
530
|
"UPDATE thread SET completedAt = :completedAt, error = :error WHERE completedAt IS NULL",
|
|
531
|
-
{"completedAt": datetime.now(), "error": "Server Shutdown"},
|
|
531
|
+
{"completedAt": datetime.now().isoformat(" "), "error": "Server Shutdown"},
|
|
532
532
|
)
|
|
533
533
|
conn.execute(
|
|
534
534
|
"UPDATE request SET completedAt = :completedAt, error = :error WHERE completedAt IS NULL",
|
|
535
|
-
{"completedAt": datetime.now(), "error": "Server Shutdown"},
|
|
535
|
+
{"completedAt": datetime.now().isoformat(" "), "error": "Server Shutdown"},
|
|
536
536
|
)
|
|
@@ -77,9 +77,17 @@ def install_anthropic(ctx):
|
|
|
77
77
|
|
|
78
78
|
anthropic_message = {"role": message.get("role"), "content": []}
|
|
79
79
|
|
|
80
|
+
# Handle interleaved thinking (must always be a list if present)
|
|
81
|
+
if "thinking" in message and message["thinking"]:
|
|
82
|
+
anthropic_message["content"].append({"type": "thinking", "thinking": message["thinking"]})
|
|
83
|
+
|
|
80
84
|
content = message.get("content", "")
|
|
81
85
|
if isinstance(content, str):
|
|
82
|
-
anthropic_message["content"]
|
|
86
|
+
if anthropic_message["content"]:
|
|
87
|
+
# If we have thinking, we must use blocks for text
|
|
88
|
+
anthropic_message["content"].append({"type": "text", "text": content})
|
|
89
|
+
else:
|
|
90
|
+
anthropic_message["content"] = content
|
|
83
91
|
elif isinstance(content, list):
|
|
84
92
|
for item in content:
|
|
85
93
|
if item.get("type") == "text":
|