Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Unreleased​
9.4.0 - 2026-04-11​
Added​
- Agent tracing with local file and Langfuse support (#1003)
LocalTracer: auto-saves JSON traces to~/.underthesea/traces/with datetime-prefixed filenamesLangfuseTracer: sends traces to Langfuse v4 with full hierarchy (agent → generation → tool), token usage, and cost tracking@tracedecorator withcontextvars-based nesting — inner calls become child spans automatically- Agent auto-traces by default (like Claude Code), disable with
UNDERTHESEA_TRACE_DISABLED=1 - Agent inherits
@trace()context — no explicit tracer needed when called inside a decorated function - 48 tests covering LocalTracer, LangfuseTracer, decorator, Agent integration, context inheritance, env var toggle
- Add Chat App for AI Agent (#893)
Changed​
- Rebrand Underthesea as Agentic AI Toolkit from v9.3.0 (#997)
Documentation​
Security​
- Bump Next.js 16.1.6 → 16.2.3 to resolve vulnerabilities (#1001)
- Resolve Dependabot vulnerabilities (#993)
9.3.0 - 2026-04-11​
Added​
- Multi-provider agent harness with zero external LLM SDK dependencies (#988)
- Provider classes:
OpenAI,AzureOpenAI,Anthropic,Gemini— each using raw HTTP (urllib + json) LLMauto-detect: selects provider from env vars (Azure > OpenAI > Anthropic > Gemini)- Streaming:
Agent.stream()+chat_stream()across all providers via SSE - Session manager: multi-session agents with context reset and structured handoff
- 101 tests all passing
- Provider classes:
- Add address converter module for post-merger admin units (#959)
Changed​
- Switch license from GPL-3.0 to Apache-2.0 (#956)
- Improve
sent_tokenizewith trained Punkt parameters (#970)- Replace hand-crafted abbreviation list (368) with data-trained parameters (1032 abbrevs, 378 sent_starters)
- Add numeric period handling (
1.500.000,15.12.2025) - Add ellipsis handling (
...mid-sentence) - Add Vietnamese academic abbreviations (
PGS.,TS.,BS.,GS.) - Accuracy on sentence-segmentation-1: 57.7% → 60.0%
Documentation​
- Restructure README to focus on Agent, move NLP details to NLP.md
- Rewrite README in English
- Add technical reports for Language Identification and POS Tagging (#954)
- Adopt Docusaurus-style versioning with version dropdown (#968)
Security​
- Bump dependency versions (#969, #971, #972, #973, #974, #976, #977, #978, #979, #980, #981, #982, #986)
9.2.10 - 2026-02-07​
Changed​
- Remove VERSION files and use
importlib.metadatafor dynamic versioning (#950, #951) - Use Rust TextClassifier with
.binmodels for classification (#935) - Update sentiment models to use underthesea_core TextClassifier (#946)
- Consolidate classification into single module (#935)
Added​
- Add pure Rust FastText inference to underthesea_core (#947)
- Add TextPreprocessor to underthesea_core for Vietnamese text preprocessing (#942)
- Add underthesea_core API documentation (#948)
- Add workflow to publish underthesea_core to crates.io (#943)
Documentation​
- Separate sidebars for Technical Reports, API Reference, Datasets, and Changelog (#945)
- Add blog posts for Rust-powered text classification and CRF (#934, #935)
- Rename docusaurus folder to docs (#933)
Security​
9.2.0 - 2026-01-31​
Added​
- Add Agent class with custom tools support using OpenAI function calling (GH-712)
- Add default tools: calculator, datetime, web_search, wikipedia, shell, python, file operations (GH-712)
Changed​
- Upgrade underthesea_core to 2.0.0 with L-BFGS optimizer (#899)
- 10x faster feature lookup with flat data structure
- 1.24x faster than python-crfsuite for word segmentation
- L-BFGS with OWL-QN for L1 regularization
9.1.5 - 2026-01-29​
Added​
- Add Agent API with OpenAI and Azure OpenAI support (GH-745, #890)
- Add ParserTrainer for dependency parsing (GH-392, #880)
- Add POS tagger training pipeline (GH-423, #883)
Documentation​
- Add Vietnamese News Dataset (UVN) documentation (GH-885, #888, #889)
- Add UVB dataset documentation (GH-720, #887)
- Add UUD-v0.1 dataset documentation (#886)
- Add UTS Dictionary dataset documentation (GH-622, #884)
9.1.4 - 2026-01-24​
Added​
Changed​
- Remove NLTK dependency (#879)