Repository navigation
Releases: dr-yakumo/Yakumo.AffectEngine
Release list
v1.2 — Published accuracy, sturdier Japanese, safe updates / 精度の公開・日本語の堅牢化・安全な更新
🎭 Yakumo.AffectEngine v1.2
Emotion analysis library for .NET 8 — understands Japanese and English feelings in text.
Includes a one-shot installer and an interactive sample app (both with selectable English / Japanese interfaces).
.NET 8 向け感情分析ライブラリです。
ワンショットインストーラーと対話型サンプルアプリ(いずれも日英UI切替対応)を同梱しています。
v1.2 publishes measured accuracy for the first time and pins the model revisions, so every installation gets exactly the weights the scores were measured with. See "Changes in v1.2" at the end for details.
v1.2 では初めて精度の測定結果を公開し、モデルのリビジョンを固定しました。どの環境にも、スコアを測定したときと同じ重みが導入されます。詳細は末尾の「v1.2 の変更点」を参照してください。
⬇️ Download / ダウンロード
Yakumo.AffectEngine-v1.2.zip (12.8 MB)
You can also find it under Assets at the bottom of this page. Then see "Getting Started" below.
ページ下部の Assets からも取得できます。取得したら、下の「はじめかた」へ進んでください。
📊 Accuracy / 精度
Macro-F1 = 0.6976 / Top-3 = 0.8591 — 14 labels, 504 Japanese sentences / 14ラベル・日本語504文
Measured on a held-out set of sentences with explicit emotion expressions, balanced across the 14 labels, with the bundled default configuration. The set is not comparable with classifiers that use a different number of labels, and scores are much lower for implicit expressions. Please read the Accuracy section of the README before quoting these figures — it lists the measurement conditions, the verified environment and the known limitations.
感情が明示的に表れた文で構成した、調整に使っていないテストセット(14ラベル均等)で、同梱の既定構成のまま測定しました。ラベル数の異なる分類の数値とは比較できず、暗示的な表現では大きく下がります。この数値を引用する前に、README の精度の節をお読みください。 測定条件・検証済みの環境・既知の限界を記載しています。
The bundled dictionaries were checked against the evaluation data, so that no entry was written to fit it.
同梱の辞書は評価データと照合し、評価データに合わせて作られた項目が無いことを確認しています。
📦 What's in the ZIP / ZIP の内容
| File / ファイル | Description / 説明 |
|---|---|
Yakumo.Affect.Sample.exe + runtime files |
Interactive sample app (built) / 対話型サンプルアプリ(ビルド済み) |
Yakumo.Affect.PolarityGate.dll |
Polarity Gate plugin (binary-only, Apache 2.0, enabled by default) / 極性ゲートプラグイン(バイナリのみ・Apache 2.0・既定で有効) |
install.bat / install.ps1 |
Installer — downloads models & sets up Python deps / インストーラー(モデル取得・Python 環境構築) |
uninstall.bat / uninstall.ps1 |
Uninstaller / アンインストーラー |
scripts/ |
Helper scripts called by the installer (model fetch with a pinned revision, fp16 export, embedding model setup) / インストーラーが使う補助スクリプト(リビジョン固定でのモデル取得・fp16 変換・埋め込みモデルの準備) |
affect.config.default |
Configuration template (EN/JP commented) / 設定テンプレート(英日コメント付き) |
affect.dict.json.example |
Translation dictionary template / 翻訳辞書テンプレート |
requirements.txt |
Python packages for the translation server / 翻訳サーバー用の Python パッケージ |
docs/YAKUMO_NLI_API_en.md / _jp.md |
Public API reference (EN/JP) / 公開 API リファレンス(英/日) |
LICENSE / LICENSE_PolarityGate / NOTICE_PolarityGate |
Licenses (MIT core / Apache 2.0 plugin) / ライセンス一式 |
THIRD-PARTY-NOTICES.txt |
License texts of the redistributed binaries / 同梱バイナリのライセンス全文 |
SHA-256 of the ZIP / ZIP の SHA-256:
32d518a026de21f1dcbdb17506c293598df2856bcd5eff24b4ffbba047a61049
🚀 Getting Started / はじめかた
-
Download and extract
Yakumo.AffectEngine-v1.2.zipYakumo.AffectEngine-v1.2.zipをダウンロードして展開 -
Run
install.bat(downloads the ONNX models and installs Python packages — internet connection required)install.batを実行(ONNX モデルの取得と Python パッケージの導入を行います — 要インターネット接続) -
Launch
Yakumo.Affect.Sample.exeand type Japanese or English textYakumo.Affect.Sample.exeを起動して日本語・英語のテキストを入力
⚠️ Note: If Windows Explorer has file extensions hidden,install.batandinstall.ps1may look identical (both shown as "install"). Make sure you double-click the.batone — double-clickinginstall.ps1by itself does nothing harmful, it just opens the script as text in Notepad instead of running it.注記: エクスプローラーで拡張子が非表示になっていると、
install.batとinstall.ps1が同じ「install」という名前に見えてしまいます。ダブルクリックするのは.batの方にしてください。install.ps1を誤ってダブルクリックしても実害はなく、実行はされずメモ帳でスクリプトのテキストが開くだけです。
⏱️ Note: The first launch takes extra time while the local translation server loads its model.
注記: 初回起動時は翻訳サーバーのモデルロードのため時間がかかります。
📋 Requirements / 動作要件
- Windows + .NET 8.0 Runtime
- Python 3.9+ (for Japanese translation; the published scores were measured with 3.11.5) / Python 3.9 以上(日本語翻訳に必要。公表スコアの測定は 3.11.5)
- Microsoft Visual C++ Redistributable (x64) — the installer offers automatic setup / インストーラーから自動導入できます
- Optional: DirectML-compatible GPU (any DirectX 12 device; CUDA not required) / 任意: DirectML 対応 GPU(DirectX 12 対応であればよく、CUDA は不要)
📖 Documentation / ドキュメント
⚖️ Licenses / ライセンス
- Core library (
Yakumo.Affect): MIT - Polarity Gate plugin (
Yakumo.Affect.PolarityGate.dll): Apache 2.0 (binary-only / バイナリのみ配布) - Redistributed third-party binaries: see
THIRD-PARTY-NOTICES.txtin the ZIP / 同梱している第三者バイナリは ZIP 内のTHIRD-PARTY-NOTICES.txtを参照
Models are not bundled — install.ps1 downloads them from their original distributors, so each is governed by the license its distributor publishes. See the README for the list.
モデルは同梱していません。install.ps1 が各配布元から取得するため、適用される条件は各配布元が公開するライセンスに従います。一覧は README を参照してください。
| Translation model / 翻訳モデル | |
|---|---|
opus — Helsinki-NLP/opus-mt-ja-en |
Default and the only supported choice / 既定かつサポート対象 |
nllb — facebook/nllb-200-distilled-600M |
|
mt5 — google/mt5-small |
Experimental; currently produces no usable output / 実験的。現状まともな翻訳を出力しません |
⚠️ Known Notes / 既知の注意点
- Windows only in this release / 本リリースは Windows 専用です
install.bat(install.ps1)requires an internet connection to download the models (~1 GB+) / モデルのダウンロードに要インターネット接続(1GB超)- Sentences with no emotion words, where the behaviour itself carries the feeling, are not handled well; the engine tends to return neutral for them. See the README's Accuracy section / 感情語を使わず行動が感情を表す文はうまく扱えず、中立を返す傾向があります。README の精度の節を参照してください
🔄 Changes in v1.2 / v1.2 の変更点
Accuracy and reproducibility / 精度と再現性
-
Published measured accuracy in the README, with the measurement conditions, the verified environment and the known limitations.
README に精度の測定結果を掲載しました。測定条件・検証済みの環境・既知の限界もあわせて記載しています。
-
Pinned the model revisions: the emotion model (
SamLowe/roberta-base-go_emotions) is fetched at a fixed revision before ONNX export, and the translation model (Helsinki-NLP/opus-mt-ja-en) is loaded at a fixed revision. Every installation now gets exactly the weights the scores were measured with, even if the upstream repositories change.モデルのリビジョンを固定しました。感情モデル(
SamLowe/roberta-base-go_emotions)は固定したリビジョンで取得してから ONNX に変換し、翻訳モデル(Helsinki-NLP/opus-mt-ja-en)も固定したリビジョンで読み込みます。上流が更新されても、スコアを測定したときと同じ重みが導入されます。 -
The translation server now prints a notice at start-up when the installed
transformersdiffers from the verified version. It does not stop.requirements.txtdeliberately sets no upper bounds, so that Yakumo does not hold back other tools in the same Python environment.インストールされている
transformersが検証済みの版と異なる場合、翻訳サーバーの起動時に告知を表示するようにしました(起動は止めません)。同じ Python 環境の他のツールを妨げないよう、requirements.txtには意図的に上限を設けていません。
Translation robustness / 翻訳の堅牢化
-
When translation collapses into a subtitle sound tag such as
(Laughter), the engine now returns neutral instead of reporting a false "joy".翻訳が
(Laughter)のような字幕の効果音表記だけになってしまった場合、誤って「喜び」と判定せず、中立を返すようにしました。 -
Kaomoji and emoji are now removed before translation, as they could make the translation drop the whole sentence.
顔文字・絵文字を翻訳の前に除去するようにしました。混ざっていると、翻訳で文全体が失われることがあったためです。
Engine and API / エンジンと API
-
Fixed the promotion logic so that every promotion evaluates the top label as it was before any promotion. Previously an earlier promotion could prevent a later one from ever firing.
昇格ロジックを修正し、すべての昇格が「昇格前の1位」を基準に判定するようにしました。以前は先に動いた昇格が、後の昇格の条件を成立させなくすることがありました。
-
Added the
Classifiedevent, raised once per completed analysis. It lets you capture the translated text and find inputs whose emotion was lost in translation. The library itself records nothing. See section 9.5 of the API reference.分析が1件完了するたびに発火する
Classifiedイベントを追加しました。翻訳後の英文を受け取れるので、翻訳で感情が失われた入力を見つけられます。ライブラリ自身は何も記録しません。API リファレンスの 9.5 を参照してください。 -
The
mt5translation option is now marked as experimental and unsupported in the installer and the configuration template.翻訳モデル
mt5を、インストーラーと設定テンプレートで「実験的・動作未保証」と明記しました。
Installer and files / インストーラーとファイル
-
Updating no longer puts your own files at risk. When
affect.configoraffect.dict.jsonalready exists, the installer first copies it tobackups\<date-time>-<number>\, then asks whether to keep it. Keeping is the default (just press Enter); answernto replace it with the v1.2 version. Replacing the dictionary was not possible before.更新の際に...
v1.1.1 — Documentation update / ドキュメント更新
🎭 Yakumo.AffectEngine v1.1.1
Emotion analysis library for .NET 8 — understands Japanese and English feelings in text.
Includes a one-shot installer and an interactive sample app (both with selectable English / Japanese interfaces).
.NET 8 向け感情分析ライブラリです。
ワンショットインストーラーと対話型サンプルアプリ(いずれも日英UI切替対応)を同梱しています。
This release contains license and documentation fixes only — see "Changes in v1.1.1" at the end for details.
本リリースはライセンスやドキュメントの修正のみですが、詳細は末尾の「v1.1.1 の変更点」を参照してください。
📦 What's in the ZIP / ZIP の内容
| File / ファイル | Description / 説明 |
|---|---|
Yakumo.Affect.Sample.exe + runtime files |
Interactive sample app (built) / 対話型サンプルアプリ(ビルド済み) |
Yakumo.Affect.PolarityGate.dll |
Optional polarity-gate plugin (binary-only, Apache 2.0) / 極性ゲートプラグイン(バイナリのみ・Apache 2.0) |
install.bat / install.ps1 |
Installer — downloads models & sets up Python deps / インストーラー(モデル取得・Python 環境構築) |
uninstall.bat / uninstall.ps1 |
Uninstaller / アンインストーラー |
affect.config.default |
Configuration template (EN/JP commented) / 設定テンプレート(英日コメント付き) |
affect.dict.json.example |
Translation dictionary template / 翻訳辞書テンプレート |
docs/YAKUMO_NLI_API_en.md / _jp.md |
Public API reference (EN/JP) / 公開 API リファレンス(英/日) |
LICENSE / LICENSE_PolarityGate / NOTICE_PolarityGate |
Licenses (MIT core / Apache 2.0 plugin) / ライセンス一式 |
THIRD-PARTY-NOTICES.txt |
License texts of the redistributed binaries / 同梱バイナリのライセンス全文 |
🚀 Getting Started / はじめかた
-
Download and extract
Yakumo.AffectEngine-v1.1.1.zipYakumo.AffectEngine-v1.1.1.zipをダウンロードして展開 -
Run
install.bat(downloads the ONNX models and installs Python packages — internet connection required)install.batを実行(ONNX モデルの取得と Python パッケージの導入を行います — 要インターネット接続) -
Launch
Yakumo.Affect.Sample.exeand type Japanese or English textYakumo.Affect.Sample.exeを起動して日本語・英語のテキストを入力
⚠️ Note: If Windows Explorer has file extensions hidden,install.batandinstall.ps1may look identical (both shown as "install"). Make sure you double-click the.batone — double-clickinginstall.ps1by itself does nothing harmful, it just opens the script as text in Notepad instead of running it.注記: エクスプローラーで拡張子が非表示になっていると、
install.batとinstall.ps1が同じ「install」という名前に見えてしまいます。ダブルクリックするのは.batの方にしてください。install.ps1を誤ってダブルクリックしても実害はなく、実行はされずメモ帳でスクリプトのテキストが開くだけです。
⏱️ Note: The first launch takes extra time while the local translation server loads its model.
注記: 初回起動時は翻訳サーバーのモデルロードのため時間がかかります。
📋 Requirements / 動作要件
- Windows + .NET 8.0 Runtime
- Python 3.9+ (for Japanese translation / 日本語翻訳に必要)
- Microsoft Visual C++ Redistributable (x64) — the installer offers automatic setup / インストーラーから自動導入できます
- Optional: DirectML-compatible GPU / 任意: DirectML 対応 GPU
📖 Documentation / ドキュメント
⚖️ Licenses / ライセンス
- Core library (
Yakumo.Affect): MIT - Polarity Gate plugin (
Yakumo.Affect.PolarityGate.dll): Apache 2.0 (binary-only / バイナリのみ配布) - Redistributed third-party binaries: see
THIRD-PARTY-NOTICES.txtin the ZIP / 同梱している第三者バイナリは ZIP 内のTHIRD-PARTY-NOTICES.txtを参照
Translation models are not bundled — install.ps1 downloads the one you select from its original distributor.
翻訳モデルは同梱していません。install.ps1 が選択したものを各配布元から取得します。
| Model / モデル | License / ライセンス | |
|---|---|---|
opus — Helsinki-NLP/opus-mt-ja-en (default / 既定) |
Apache-2.0 | ✅ commercial use OK / 商用可 |
nllb — facebook/nllb-200-distilled-600M |
CC-BY-NC-4.0 | |
mt5 — google/mt5-small |
Apache-2.0 | ✅ commercial use OK / 商用可 |
⚠️ Known Notes / 既知の注意点
- Windows only in this release / 本リリースは Windows 専用です
install.bat(install.ps1)requires an internet connection to download the models (~1 GB+) / モデルのダウンロードに要インターネット接続(1GB超)
🔄 Changes in v1.1.1 / v1.1.1 の変更点
Documentation only. The library behaves exactly as v1.1.
ドキュメントのみの変更です。ライブラリの動作は v1.1 と同一です。
-
The license of the default translation model
Helsinki-NLP/opus-mt-ja-enwas documented as MIT; the correct license is Apache-2.0. Commercial use is permitted under both.既定の翻訳モデル
Helsinki-NLP/opus-mt-ja-enのライセンスを MIT と記載していました。正しくは Apache-2.0 です。いずれも商用利用を許諾しています。 -
Added
THIRD-PARTY-NOTICES.txtwith the license texts of the redistributed binaries (ONNX Runtime, Microsoft.ML.Tokenizers, System.Numerics.Tensors, Google.Protobuf).同梱している第三者バイナリのライセンス全文を
THIRD-PARTY-NOTICES.txtとして追加しました。 -
Reorganised the third-party notices in
README.md.README.mdの第三者表示を整理しました。 -
Updated
README.mdand the API references: the documented translation model is nowopus(the default), with a quick start and setup steps added.README.mdと API リファレンスを更新しました。翻訳モデルの記述を既定のopusに修正し、クイックスタートとセットアップ手順を追加しています。 -
The v1.1 ZIP has been removed, as it bundled the incorrect statement (
affect.config.default, the installer and the API references). Binaries are unchanged — 29 of the 35 entries are byte-identical to v1.1 (SHA-256).誤った記載を同梱していたため(
affect.config.default、インストーラー、API リファレンス)、v1.1 の ZIP は削除しました。バイナリに変更はなく、35エントリ中29件が v1.1 とバイト単位で一致しています(SHA-256)。
The ZIP for this release has been withdrawn. Please use v1.2 instead.
このリリースの ZIP は取り下げました。v1.2 をお使いください。
v1.1 — First Public Release / 初回公開リリース
Note (2026-08-13): The bundled documentation in this release stated the license of the translation model
Helsinki-NLP/opus-mt-ja-enas MIT (affect.config.default, the installer and the API references). The correct license is Apache-2.0; commercial use is permitted under both.The ZIP for this release has been removed. Please use v1.1.1 and do not rely on the documentation in this version. The source archives below are generated automatically from the v1.1 tag and still contain the original text. Do not use them.
注記 (2026-08-13): この版の同梱ドキュメント(
affect.config.default、インストーラー、API リファレンス)は、翻訳モデルHelsinki-NLP/opus-mt-ja-enのライセンスを MIT と記載していました。正しくは Apache-2.0 です(いずれも商用利用を許諾しています)。本リリースの ZIP は削除しました。**v1.1.1 をご利用ください。**旧版である v1.1 のドキュメントの記述は参照しないでください。
なお下記のソースアーカイブは v1.1 タグから自動生成されたもので、修正前の記述を含みますので利用しないでください。
🎭 Yakumo.AffectEngine v1.1 — First Public Release / 初回公開リリース
Emotion analysis library for .NET 8 — understands Japanese and English feelings in text.
This is the first public release, including the one-shot installer and an interactive sample app (both with selectable English / Japanese interfaces).
.NET 8 向け感情分析ライブラリの初回公開リリースです。
ワンショットインストーラーと対話型サンプルアプリ(いずれも日英UI切替対応)を同梱しています。
📦 What's in the ZIP / ZIP の内容
| File / ファイル | Description / 説明 |
|---|---|
Yakumo.Affect.Sample.exe + runtime files |
Interactive sample app (built) / 対話型サンプルアプリ(ビルド済み) |
Yakumo.Affect.PolarityGate.dll |
Optional polarity-gate plugin (binary-only, Apache 2.0) / 極性ゲートプラグイン(バイナリのみ・Apache 2.0) |
install.bat / install.ps1 |
Installer — downloads models & sets up Python deps / インストーラー(モデル取得・Python 環境構築) |
uninstall.bat / uninstall.ps1 |
Uninstaller / アンインストーラー |
affect.config.default |
Configuration template (EN/JP commented) / 設定テンプレート(英日コメント付き) |
affect.dict.json.example |
Translation dictionary template / 翻訳辞書テンプレート |
docs/YAKUMO_NLI_API_en.md / _jp.md |
Public API reference (EN/JP) / 公開 API リファレンス(英/日) |
LICENSE / LICENSE_PolarityGate / NOTICE_PolarityGate |
Licenses (MIT core / Apache 2.0 plugin) / ライセンス一式 |
🚀 Getting Started / はじめかた
- Download and extract
Yakumo.AffectEngine-v1.1.zip
Yakumo.AffectEngine-v1.1.zipをダウンロードして展開 - Run
install.bat(downloads the ONNX models and installs Python packages — internet connection required)
install.batを実行(ONNX モデルの取得と Python パッケージの導入を行います — 要インターネット接続) - Launch
Yakumo.Affect.Sample.exeand type Japanese or English text
Yakumo.Affect.Sample.exeを起動して日本語・英語のテキストを入力
⚠️ Note: If Windows Explorer has file extensions hidden,install.batandinstall.ps1may look identical (both shown as "install"). Make sure you double-click the.batone — double-clickinginstall.ps1by itself does nothing harmful, it just opens the script as text in Notepad instead of running it.
注記: エクスプローラーで拡張子が非表示になっていると、install.batとinstall.ps1が同じ「install」という名前に見えてしまいます。ダブルクリックするのは.batの方にしてください。install.ps1を誤ってダブルクリックしても実害はなく、実行はされずメモ帳でスクリプトのテキストが開くだけです。
⏱️ Note: The first launch takes extra time while the local translation server loads its model.
注記: 初回起動時は翻訳サーバーのモデルロードのため時間がかかります。
📋 Requirements / 動作要件
- Windows + .NET 8.0 Runtime
- Python 3.9+ (for Japanese translation / 日本語翻訳に必要)
- Microsoft Visual C++ Redistributable (x64) — the installer offers automatic setup / インストーラーから自動導入できます
- Optional: DirectML-compatible GPU / 任意: DirectML 対応 GPU
📖 Documentation / ドキュメント
⚖️ Licenses / ライセンス
- Core library (
Yakumo.Affect): MIT - Polarity Gate plugin (
Yakumo.Affect.PolarityGate.dll): Apache 2.0 (binary-only / バイナリのみ配布) - Default translation model
opus-mt-ja-en:MIT ✅→ Apache-2.0 ✅ (corrected 2026-08-13 / 訂正)
(⚠️ The optionalnllbmodel is CC-BY-NC-4.0 — non-commercial only / 任意選択のnllbは非商用限定)
⚠️ Known Notes / 既知の注意点
- Windows only in this release / 本リリースは Windows 専用です
install.bat(install.ps1)requires an internet connection to download the models (~1 GB+) / モデルのダウンロードに要インターネット接続(1GB超)