Skip to content

Releases: idiap/sdialog

v0.4.0 🔊

19 Nov 12:12

Choose a tag to compare

🔊 Audio Generation Module & Enhanced Interpretability 🎉

This release introduces the new sdialog.audio module, enabling audio conversation generation from text dialogues, along with expanded interpretability capabilities and new backend support.

🎙️ Transform Dialogues into Audio

  • 🔊 New sdialog.audio Module:
    Convert any text dialog to audio with a single line: dialog.to_audio(). The module includes:

    • Multiple TTS engines (Kokoro, Hugging Face models)
    • Voice databases with automatic voice assignment based on persona attributes (age, gender, language)
    • Acoustic simulation with ray tracing for realistic room acoustics and spatial audio
    • Microphone simulation with professional impulse responses (Shure, Sennheiser, Sony)
    • Room generation with customizable dimensions, materials, and furniture placement
    • Multiple export formats (WAV, MP3, FLAC) with custom sampling rates
    • Background/foreground effects for environmental realism

    → 7 comprehensive tutorials covering all audio generation capabilities
    → Install with: pip install sdialog[audio]

🧠 Enhanced Interpretability & Steering

  • 🔍 Input Inspection:
    Inspect layer and component inputs (not just outputs) with Inspector(target="model.layers.15", inspect_input=True)

  • 📊 Input Token Analysis:
    Access activations for input tokens (not only generated ones) via inspector.input[i][j].act where i is turn index and j is input token index
    → Enables deeper mechanistic analysis of prompt processing

🌐 New Backend Support

  • 🤖 Anthropic Integration:
    Added support for Anthropic's Claude models (#100)

  • ☁️ Azure OpenAI:
    Native support for Azure OpenAI deployments (#100)

🐛 Bug Fixes

  • 💾 Agent Memory Reset:
    Fixed memory reset issue when no prompt system and no persona is provided

🎯 What's Next

This major update enables:

  • End-to-end audio dialogue generation for training data, evaluation, and production systems
  • Deeper model analysis through enhanced interpretability tools
  • Broader deployment options with Anthropic and Azure support

Full Changelog: View detailed changes

v0.3.3 🚀

30 Oct 14:39

Choose a tag to compare

🚀 New Server Module & Enhanced Evaluation Tools

This release introduces the new sdialog.server module, enabling agent serving through an Ollama/OpenAI-compatible REST API, along with key improvements to evaluation tools and agent flexibility.

🖥️ Serve Your Agents via API

  • 🌐 New sdialog.server Module:
    Serve agents directly through an Ollama/OpenAI-compatible REST API, making SDialog agents compatible with external UIs like Open WebUI.
    → Easily integrate your agents into existing chat interfaces or dashboards.
    (#92)

💬 Dialogue Management Enhancements

  • 📦 Load from Hugging Face:
    Added Dialog.from_huggingface() — directly load or download dialogues from Hugging Face datasets for instant experimentation.
    (#59)

🧠 Agent & Evaluation Improvements

  • ⚙️ Agent Initialization:
    Enhanced Agent initialization now allows agents to act as proxies for external conversational systems (e.g., API-based or hybrid setups).
    (#90, fa1d8f3)
  • 🧩 LLM Judge Flexibility:
    sdialog.evaluation LLM judge methods now accept custom user-defined template arguments.
    (#86)

🐛 Bug Fixes

  • 📈 Corrected Readability Scores:
    Fixed the computation of Flesch Reading Ease and Gunning Fog metrics for more accurate linguistic evaluation.
    (d1d4260)

🎯 What’s Next

This update lays the groundwork for production-ready conversational systems, allowing users to:

  • Host SDialog agents via REST APIs
  • Connect easily to front-end chat interfaces
  • Extend evaluation pipelines with domain-specific templates

Full Changelog: View detailed changes

v0.3.0 🚀

03 Oct 11:49

Choose a tag to compare

🚀 Major Feature Release - Enhanced Agent Capabilities & Evaluation Tools

This release introduces significant new capabilities to SDialog, focusing on advanced agent functionality, comprehensive evaluation tools, and improved dialogue generation.

🤖 Agent & Orchestration Enhancements

  • 🧠 Agent Thinking Capabilities: Agents can now handle internal thinking processes for more sophisticated reasoning
  • 🛠️ Agent Tools Support: Added tools capabilities to Agents (e.g. RAG or any other function) with new tutorial
  • 📦 New sdialog.agents Module: Restructured and moved Agent class into dedicated module
  • 🔗 Direct Model Access: Added base_model attribute to Agent for direct access to underlying LLM models for mechanistic interpretability

🎭 Personas & Context Modeling

  • 🏢 Customer Service Personas: New Customer and SupportAgent personas for customer service dialogues
  • 🌍 Context Modeling: New Context and ContextGenerator classes to explicitly model shared conversation context
  • 📊 Persona Introspection: Added static method to get list of all attributes from any BasePersona subclass

💬 Dialogue Generation & Processing

  • 🔄 Dialogue Paraphrasing: New Paraphraser class to paraphrase dialogues while preserving meaning
  • 🔗 Dialog Merge Functionality: Option to merge consecutive turns from same speaker when loading dialogs
  • 🐍 Built-in String Support: Added support for built-in str functions on Dialog class

📈 Evaluation & Analysis

  • 📝 Linguistic Analysis: New LinguisticFeatureScore to compute Flesch reading ease, Gunning fog, hesitation rate, and mean turn length
  • 🎯 Improved LLM Judges: Enhanced attribute naming (yespositive, feedbackreason)

🔧 Technical Improvements

  • 💾 Enhanced Caching: Added clear_cache() method to config
  • 🏗️ Improved Metadata Handling: Better metadata management across the system
  • 🔍 Simplified Interpretability: Streamlined inspection target definitions
  • 🐛 Bug Fixes: Fixed potential issues in PersonaDialogGenerator

📚 Documentation & Developer Experience

  • 📖 Comprehensive API Documentation: Refactored and added docstrings with examples for all components
  • 🎓 Updated Tutorials: All tutorials now work with new code and include "Open in Colab" badges
  • 🤖 AI Assistant Support: Automatic generation of llm.txt for better AI coding assistant integration
  • 📝 Complete API Reference: Full documentation ready for official release

🎯 What's Next

This release significantly expands SDialog's capabilities, making it more powerful for:

  • Complex dialogue generation with thinking agents
  • Customer service scenario simulation
  • Advanced dialogue evaluation and analysis
  • Research in dialogue systems and conversational AI

Full Changelog: View detailed changes

v0.1.0 🌱

05 Aug 09:58

Choose a tag to compare

🚀 Initial Release after JSALT 2025

This release marks the first official version following the work done during JSALT 2025.

More than 500 commits have been added since the initial basic release, representing major changes and improvements to the package. Below is a summary of some key updates:

✅ Implemented Features

  • Multi-backend support: Hugging Face, Ollama, OpenAI, AWS
  • Improved dialog format
  • Persona generation support
  • Interpretability module (sdialog.interpretability): Includes inspectors, steerers, hooks, and intruders (mechanistic interpretability)
  • Evaluation module (sdialog.evaluation): Provides metrics, scoring methods (including LLM-as-a-judge), evaluators, and dataset comparators

❌ Still in Progress

  • Audio module (sdialog.audio) is not yet fully integrated
  • Documentation updates are still pending