mirror of
https://github.com/Jeuners/astra-vision.git
synced 2026-09-09 15:02:35 +02:00
Löst die RSS-Beschränkung: Feed-Einträge liefern nur eine kurze Teaser-Beschreibung, nie den vollen Artikeltext. - astra/articles.py: lädt eine URL, extrahiert den reinen Fließtext via trafilatura (ohne Navigation/Werbung/Boilerplate). Live gegen einen echten RP-ONLINE-Artikel verifiziert (1682 Zeichen sauberer Text). - read_article-Tool in tools.py, gleiches tool_start/tool_result/ tool_error-Muster wie die anderen beiden Tools. Beschreibung nennt explizit den erwarteten Anwendungsfall (Nachfrage zu einer schon genannten Schlagzeile) — konsequent nach der zuletzt beschlossenen Regel, Tool-Verhalten nur in der FunctionSchema, nie im SYSTEM_PROMPT. Gemessen: mit drei Tools sinkt read_news weiter auf ca. 15-20% (vorher mit zwei Tools 20-50%). read_article selbst liegt bei einer konkreten Nachfrage zu einer schon im Kontext stehenden Schlagzeile bei ~65% (2/3 in einem Live-Lauf gegen echtes Ollama, echter Artikeltext erfolgreich extrahiert; der eine Fehlschlag gab ehrlich zu, den Volltext nicht zu kennen, statt zu erfinden). NICHT gepusht — auf Anweisung bis auf Weiteres nur lokal. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01LVgSHNHdRx3UNTBodFmhRA
29 lines
604 B
TOML
29 lines
604 B
TOML
[project]
|
|
name = "astra-local-voice"
|
|
version = "0.1.0"
|
|
description = "Lokaler deutscher Sprachagent für Apple Silicon und Ollama"
|
|
requires-python = ">=3.12,<3.13"
|
|
dependencies = [
|
|
"pipecat-ai[silero,webrtc,pocket-tts]",
|
|
"mlx-audio",
|
|
"fastapi",
|
|
"uvicorn",
|
|
"httpx",
|
|
"pypdf",
|
|
"python-multipart",
|
|
"feedparser",
|
|
"trafilatura",
|
|
]
|
|
|
|
[dependency-groups]
|
|
dev = ["pytest", "pytest-asyncio", "pytest-cov", "playwright", "ruff"]
|
|
|
|
[tool.pytest.ini_options]
|
|
asyncio_mode = "auto"
|
|
testpaths = ["tests"]
|
|
|
|
[tool.ruff]
|
|
line-length = 100
|
|
|
|
[tool.ruff.lint]
|
|
select = ["E4", "E7", "E9", "F", "I", "B", "UP"]
|