Breaking Changes:
chat()method now returns fullChatResponseobject instead of just the response string- Response includes:
ok,response,intermediate_steps,chat_id, and optionalreferences - Migration: Change
response = await skald.chat(...)toresponse = await skald.chat(...); text = response["response"]
- Response includes:
delete_memo()method now returns{"ok": bool}instead ofNone
New Features:
Conversation Continuity:
- Added
chat_idfield toChatRequestandChatResponsefor multi-turn conversations - Use
chat_idfrom previous response to maintain conversation context
Advanced RAG Configuration:
- Added comprehensive
RAGConfigtype with full pipeline control:llm_provider: Choose between "openai", "anthropic", or "groq"query_rewrite: Enable query reformulation for vague queriesvector_search: Configuretop_k(1-200) andsimilarity_threshold(0.0-1.0)reranking: Enable sophisticated reranking with configurabletop_k(1-100)references: Enable citation markers and source attribution
References/Citations System:
- Added
ReferencesandMemoReferencetypes - Chat responses can include
[[N]]citation markers with source mapping - Streaming chat now emits
"references"event type with JSON-encoded references - Updated
ChatStreamEventto support"references"event type
System Prompt Customization:
- Added
system_promptfield toChatRequestfor custom AI behavior
Removed:
SearchMethodtype (obsolete - search method is no longer configurable)
- Remove legacy documentation for document generation methods
- Added
create_memo_from_filemethod for document uploads (PDF, DOC, DOCX, PPTX) - Added
check_memo_statusmethod to track memo processing status create_memonow returns{"memo_uuid": str}instead of{ "ok": True }
- Removed
generateandstreamed_generatemethods - Removed
search_methodfrom search, now uses semantic search and is no longer configurable chatmethod now returns the actual response content from the model rather than a JSON response.pytho