Skip to content

v1.0.7

Latest

Choose a tag to compare

@AlbumenJ AlbumenJ released this 14 Jan 06:29

This release expands the ecosystem with comprehensive Ollama integration for local LLMs, introduces Kotlin Coroutine extensions for a more modern development experience, and significantly enhances the Skill and RAG systems with dynamic JAR loading and Tika document parsing.

🌟 Key Highlights

1. Comprehensive Ollama Integration

We have added full support for Ollama, enabling seamless integration with local Large Language Models (LLMs).

  • Capabilities: Includes support for both Chat and Embedding APIs (#385).
  • Documentation: Added comprehensive documentation to guide you through setting up and using Ollama with AgentScope (#492).
  • Optimization: Improved test performance by replacing slow integration tests with fast unit tests (#544).

2. Kotlin Coroutine Extensions

For Kotlin developers, we have introduced a new extension layer to bridge the gap between Project Reactor and Kotlin Coroutines.

  • Mechanism: Provides extensions to convert Mono to suspend functions and Flux to Flow (#376).
  • Impact: This allows for writing cleaner, more idiomatic Kotlin code when building agents, leveraging the power of structured concurrency.

3. Enhanced Skill Loading & RAG Support

The capability to manage external knowledge and tools has been significantly upgraded.

  • Dynamic Skills: You can now load skills directly from external JAR files using JarSkillRepositoryAdapter (#546). We also consolidated skill discovery tools into a unified load_skill_through_path tool (#505).
  • RAG Parsing: Added support for Apache Tika, enabling the parsing of a wide variety of document formats for Retrieval-Augmented Generation (#538).

🚀 New Features

  • Model Enhancements:

    • OpenAI: Added support for Video URLs in OpenAIModel (#476) and configurable endpointPath for OpenAI-compatible APIs (#488).
    • DashScope: Added support for secure encrypted access to Aliyun models (#511).
  • Observability:

    • Added header support to TelemetryTracer, enabling authentication for observability platforms like Langfuse (#543).
  • Memory & Context:

    • Prompt Optimization: Added CompressPrompt optimization for auto-context memory (#457).
    • Mem0: Added agentId support for Mem0 storage operations (#539).
  • Spring & Framework:

    • Added chat completions API support to the Spring Web Starter (#382).
    • A2A: Added comprehensive examples for Agent-to-Agent (A2A) communication using Nacos registry (#458) and improved message handling with agent names (#467).
  • Sub-Agents: Enhanced event forwarding mechanism to carry rich metadata (#529).

🛠️ Refactoring & Fixes

  • Streaming: Added an option to filter "acting" chunks from the streaming output for cleaner UI integration (#553), and fixed duplicate message output issues (#487).
  • Dependencies: Removed snakeyaml dependency in favor of a lightweight YAML parser (#524) and bumped quartz to 2.5.2 (#437).
  • Bug Fixes:
  • DashScope: Fixed missing additional headers and parameters in DashScopeHttpClient (#481).
  • React: Enforced validation when pending tool calls exist (#499).
  • RAG: Fixed RAG hooks not working and added logging for Bailian RAG failures (#542).
  • Structured Output: Preserved ChatUsage metrics after memory compression (#540).

❤️ New Contributors

Full Changelog: v1.0.6...v1.0.7