Repository navigation
Releases: NandhaKishorM/laya
Releases · NandhaKishorM/laya
Release list
v0.4.15
What's Changed
- test(java): follow #1315's English words in two stale router tests by @aashish254 in #1323
- fix(laya-ts): spell floats >= 1e16 like CPython in serializeState by @thread3d in #1341
- fix(dotnet): parse and re-emit JSON without recursion, so depth cannot overflow the stack by @thread3d in #1346
- fix(ci): run the real bf16 forward in the child, not a stand-in by @thread3d in #1347
- docs(hooks): align calibration input and fixture requirements by @xinpingzh in #1348
- perf(lang): optimize unicode script detection with binary search by @HamidRezaLS in #1349
- build(deps): bump github/codeql-action/init from 4.38.3 to 4.39.1 by @dependabot[bot] in #1353
- build(deps): bump github/codeql-action/analyze from 4.38.3 to 4.39.1 by @dependabot[bot] in #1356
- fix(evals): a threshold names its metric, and noul_accuracy is not choice_accuracy by @aashish254 in #1317
- fix(evals): a gate policy nested too deep for json is a usage error, not a crash by @aashish254 in #1318
- fix(evals): a dataset that cannot be read is a usage error, not a traceback by @aashish254 in #1319
- fix(evidence): a too-deep JSON artifact names the file it came from by @aashish254 in #1320
- fix(integrations): refuse a remote answers field that is not an object by @aashish254 in #1321
- fix(evals): refuse a dataset row that is not a row as an EvalError by @aashish254 in #1322
- test(rust): pin Python 0.4.14's English question words and sample its live vocabulary by @kevin-gatimu in #1325
- fix(agent): allow end hooks to remove long-scan probe answers by @Boulea7 in #1326
- fix(java): copy AgentConfig's temperature table instead of aliasing it by @thread3d in #1327
- fix(java): close the ONNX session options, and a half-built split graph by @thread3d in #1328
- fix(java): leave nothing that can throw between taking a router lease and releasing it by @thread3d in #1329
- fix(lang): describe the state in analyse, and round rates like Python by @cyberspace-cs in #1330
- fix(serve): bound the request-body read so a stalled upload frees its slot by @thread3d in #1331
- fix(serve): a caller batch_size may shrink a pass, never widen one by @thread3d in #1332
- fix(serve): serve no docs or schema when a bearer is required by @thread3d in #1333
- fix(lang): count letters the interpreter's Unicode database does not know by @thread3d in #1334
- fix(integrations): fail closed on malformed nested decision fields by @thread3d in #1335
- fix(laya-ts): stop reading all-caps lines as French or Portuguese by @thread3d in #1336
- fix(laya-ts): forward a detected "en" so lang_temperatures.en applies by @thread3d in #1337
- fix(laya-ts): forward maxLen / headMaxLen through Router.predict by @thread3d in #1338
- fix(laya-ts): end batch request contexts in reverse start order by @thread3d in #1339
- fix(laya-ts): forward per-call hooks through decideBatch on a Router by @thread3d in #1340
- fix(laya-ts): take the noul enum shortcut only for two distinct booleans by @thread3d in #1342
- fix(typescript-sdk): accept option_order and noul labels on a question by @thread3d in #1343
- fix(rust,dotnet): clip shortlist cosines to the documented [-1, 1] by @thread3d in #1344
- chore(rust): record 0.4.14 in the routing golden meta by @thread3d in #1345
New Contributors
- @Boulea7 made their first contribution in #1326
- @cyberspace-cs made their first contribution in #1330
Full Changelog: v0.4.14...v0.4.15
v0.4.14
What's Changed
- fix(integrations): fail closed on a non-numeric or bool probability in LayaToolSelector.select by @aashish254 in #1300
- fix(integrations): reject a non-object remote decision response in LangChain, CrewAI and LlamaIndex by @aashish254 in #1301
- fix(integrations): guard the score-rail against a malformed probabilities block by @aashish254 in #1302
- docs: add pydecide to Community Tools, local inference by default by @gopaljigaur in #1304
- docs(api): clarify independent probability rounding by @monsterlag in #1305
- feat(go): install a calibration payload at Open by @keemsisi in #1306
- feat(go): presets and embedding shortlist by @keemsisi in #1307
- feat(go): port laya.email (CleanBody, State) by @keemsisi in #1308
- feat(go): port the routing half of laya.router (Route, RouteBatch) by @keemsisi in #1310
- feat(go): router on_route hooks and hook registry by @keemsisi in #1311
- laya-dotnet: stop ConcurrentLoadsWarnOnce counting other classes' warnings by @keemsisi in #1313
- fix(hooks): reject invalid reliability calibration evidence by @xinpingzh in #1314
- fix(lang): count question words and auxiliaries as English evidence by @Rish-it in #1315
- feat(go): runnable quickstart and benchmark samples by @keemsisi in #1309
New Contributors
- @gopaljigaur made their first contribution in #1304
- @monsterlag made their first contribution in #1305
Full Changelog: v0.4.13...v0.4.14
v0.4.13
What's Changed
- feat(lang): add opt-in detection reasons and source diagnostics by @xinpingzh in #1284
- fix(hooks): preserve label text when renaming options without descriptions (#1285) by @Swatantra-66 in #1286
- fix(hooks): keep stability calibration and replay on the same precision by @xinpingzh in #1289
- feat(ts): add local option stability diagnostics by @xinpingzh in #1290
- fix(dotnet): match the Python SDK exactly in routing, language, email, rounding and config by @kevin-gatimu in #1291
- feat(rust): add predict_long and match the Python SDK exactly by @kevin-gatimu in #1292
- fix(tools): fail closed on a non-object remote decision response by @aashish254 in #1293
- fix(structured): refuse a boolean score bound instead of reading it as 1/0 by @aashish254 in #1294
- fix(evals): refuse a boolean confidence in _answer_confidence by @aashish254 in #1295
- fix(agno): reject a non-object remote decision response by @aashish254 in #1296
- feat(sdk): add Python HTTP batch predictions by @xinpingzh in #1297
- perf(agent): optimize logit decoding and confidence calculation in _decode_answers by @HamidRezaLS in #1299
Full Changelog: v0.4.12...v0.4.13
v0.4.12
What's Changed
- feat(hooks): add OptionStabilityHook for metamorphic reliability signal (#635) by @Swatantra-66 in #908
- build(deps): bump actions/setup-java from 6.0.1 to 6.1.0 by @dependabot[bot] in #1272
- build(deps-dev): bump vitest from 5.0.3 to 5.0.4 in /laya-ts by @dependabot[bot] in #1273
- build(deps): bump gradle/actions/wrapper-validation from 4.4.3 to 6.4.0 by @dependabot[bot] in #1274
- test(hooks): count distinct contexts by holding them, not by id() by @muhammadaliqasmi in #1277
- perf(onnx): reuse question tokens across states in predict_batch by @HamidRezaLS in #1278
- docs(shortlist): show a dedicated bi-encoder in the example and measure what the query should embed by @zhlei07 in #1281
- feat(dotnet): add PredictLong, ported from ONNXAgent.predict_long by @kevin-gatimu in #1283
- perf(common): collate question rows directly into numpy arrays by @HamidRezaLS in #1279
New Contributors
- @muhammadaliqasmi made their first contribution in #1277
- @zhlei07 made their first contribution in #1281
Full Changelog: v0.4.11...v0.4.12
v0.4.11
What's Changed
- feat(rust): add Rust SDK (laya-onnx) by @kevin-gatimu in #672
- fix(onnx): export a batch-dynamic graph, and check that it is one by @keemsisi in #688
- docs(onnx): document the calibration knob test_calibrate.py pins by @aashish254 in #731
- perf(evals): chunk rows whose criteria dicts differ only in key order by @aashish254 in #732
- feat(mcp): add laya_predict_long for states past the context window by @aashish254 in #738
- feat(ts): port decideBatch and expose answerConfidence by @Angboo in #750
- feat(integrations): forward the two Router-only controls task and lang_guess by @aashish254 in #804
- feat(integrations): add laya[agno] integration for Agno agent routing and guardrails by @VinayChaudhari1996 in #970
- feat(integrations): add LayaToolSelector for tool and function routing by @LEVELING2108 in #977
- fix(hooks): refuse a bool hooks_timeout instead of reading it as 1.0 by @aashish254 in #1203
- perf(onnx): collate question rows directly into numpy arrays by @HamidRezaLS in #1271
- feat(examples): add start.bat to launch the web UI on Windows by @jaideepkumar69-tech in #432
New Contributors
- @VinayChaudhari1996 made their first contribution in #970
- @jaideepkumar69-tech made their first contribution in #432
Full Changelog: v0.4.10...v0.4.11
v0.4.10
v0.4.9
What's Changed
- fix(evals): refuse a tolerance that cannot fail the gate by @aashish254 in #1250
- test(integrations): derive the LangChain control family from _controls by @aashish254 in #1254
- fix(calibrate): refuse a boolean target_error in fit_abstention_thresholds by @aashish254 in #1256
- fix(mcp): a door collapses only a numeric 0, never a boolean control by @aashish254 in #1257
- fix(calibrate): a seed that cannot seed RandomState names itself by @aashish254 in #1258
- test(lazy-import): pin laya.mcp's documented no-extra import surface by @aashish254 in #1259
- fix(evals): a JSON container subclass encodes as the mapping it wraps by @aashish254 in #1261
- perf(router): memoize question schema serialization in predict_batch by @HamidRezaLS in #1262
- feat(sdk): add a standalone Python HTTP client by @xinpingzh in #1264
- test(packaging): skip repo-only checks the sdist does not ship by @sathariels in #1265
- test(evals): the bootstrap batching cannot move paired_delta_ci95 by @aashish254 in #1240
- fix(evals): escape Markdown cell content in the report's slice labels by @aashish254 in #1241
- fix(mcp): refuse a LAYA_DEVICE index torch rewrites instead of building another GPU by @aashish254 in #1242
- fix(compile): read LAYA_INDUCTOR_CACHE_DIR stripped, with blank meaning unset by @aashish254 in #1246
- feat(go): min_confidence gate for Predict and PredictBatch by @keemsisi in #1247
- fix(evals): refuse two commits for one --revision checkpoint by @aashish254 in #1248
- test(confidence): refuse a boolean probability in any position, not only when it is the only one by @aashish254 in #1249
- fix(evidence): a boolean calibration
itemsis a malformed entry, not a count by @aashish254 in #1251 - test(evals): pin that questions_fingerprint hashes every schema, in sorted order by @aashish254 in #1252
- fix(evals): a row built in Python gets the checks a JSONL row already had by @aashish254 in #1253
- feat(go): per-language temperatures and checkpoint digest verification by @keemsisi in #1260
Full Changelog: v0.4.8...v0.4.9
v0.4.8
What's Changed
- chore(deps): bump ruff from 0.16.10 to 0.17.0 by @dependabot[bot] in #1212
- chore(deps): bump github/codeql-action/analyze from 4.38.2 to 4.38.3 by @dependabot[bot] in #1216
- chore(deps): bump github/codeql-action/autobuild from 4.38.2 to 4.38.3 by @dependabot[bot] in #1217
- chore(deps): bump github/codeql-action/init from 4.38.2 to 4.38.3 by @dependabot[bot] in #1218
- chore(deps): bump gradle/actions/wrapper-validation from 0b6dd653ba04f4f93bf581ec31e66cbd7dcb644d to ed408507eac070d1f99cc633dbcf757c94c7933a by @dependabot[bot] in #1219
- chore(deps-dev): bump @types/node from 26.6.4 to 26.6.5 in /laya-ts by @dependabot[bot] in #1213
- chore(deps-dev): bump typescript from 5.9.3 to 7.0.2 in /sdk/typescript by @dependabot[bot] in #1214
- feat(go): run the model from laya-go: Predict over ONNX Runtime by @keemsisi in #1222
- fix(serve): read a blank LAYA_* value as unset by @aashish254 in #1226
- fix(calibrate): read bins and min_bucket_n as the module's own positive integers by @aashish254 in #1228
- fix(evals): a report laya-evals cannot read is a usage error, not exit 1 by @aashish254 in #1230
- fix(common): refuse a bins count ECE cannot histogram by @aashish254 in #1232
- fix(structured): preserve singleton boolean constraints by @Bortlesboat in #1235
- docs(mcp): say what LAYA_DEVICE actually goes through by @aashish254 in #1236
- fix(confidence): refuse a negative probability instead of a Jev confidence outside [0, 1] by @aashish254 in #1238
- test(email): pin the max_chars slice semantics the port fixtures record by @aashish254 in #1239
- chore(deps): bump actions/setup-java from 4.7.1 to 6.0.1 by @dependabot[bot] in #1215
- fix(structured): reject a non-array 'enum' with a path-naming SchemaError by @aashish254 in #1220
- docs(go): say which packages laya-go actually ships by @aashish254 in #1221
- fix(evals): refuse a baseline the gate cannot subtract through by @aashish254 in #1223
- fix(revisions): name which side asked for 'reviewed' when the refusal fires by @aashish254 in #1224
- fix(evals): refuse a non-finite --min/--max/--tolerance gate parameter by @aashish254 in #1225
- fix(serve): refuse a bad LAYA_LOG_LEVEL with a message, not a traceback by @aashish254 in #1227
- perf(agent): reuse sequence stats option count instead of re-rendering options by @HamidRezaLS in #1231
- feat(go): PredictLong for states longer than the model window by @keemsisi in #1233
- build(setup): add platform-detecting setup entry point and Linux setup by @richeshgupta in #1234
New Contributors
- @Bortlesboat made their first contribution in #1235
- @HamidRezaLS made their first contribution in #1231
- @richeshgupta made their first contribution in #1234
Full Changelog: v0.4.7...v0.4.8
v0.4.7
What's Changed
- docs(docker): distinguish HTTP liveness from inference by @maxfield-allison in #1181
- test(docker): add an optional cached HTTP inference check by @maxfield-allison in #1182
- fix(cli): an interactive session returns the exit code its requests earned by @aashish254 in #1184
- fix(evals): hash option_order into the question fingerprint by @aashish254 in #1187
- fix(ts): read email text the way the Python reference does by @aashish254 in #1188
- test(citations): a :NNN citation must fall inside the symbol it names by @aashish254 in #1189
- fix(common): report a bool temperature a checkpoint shipped, not load it silently by @aashish254 in #1190
- fix(ts): report a bool temperature a checkpoint shipped, not load it silently by @aashish254 in #1191
- fix(ts): read a temperature as float() does, not as Number() does by @aashish254 in #1192
- fix(presets): an empty category map falls back to the defaults by @aashish254 in #1193
- docs(hooks): the RuntimeWarning arrives once per distinct message, not per failure by @aashish254 in #1194
- fix(ts): normalise the action head at the model boundary, not in the decoder by @aashish254 in #1195
- feat(ts): honour a question's
option_orderacross encoding and decoding by @aashish254 in #1196 - docs(benchmarks): MPS fp16 autocast against fp32 on an Apple M5 Pro by @sandole in #1199
- fix(router): validate questions in predict before checkpoint load (#707) by @Swatantra-66 in #1201
- fix(calibrate): refuse a non-integral JSON version instead of truncating it by @aashish254 in #1202
- feat(serve): narrow large choices on /v1/systemone/batch too (#302) by @kmitul in #1204
- fix(ts): verify the ONNX graphs before anything lands in --out-dir by @aashish254 in #1206
- fix(compose): forward tournament group knob to laya-serve by @NAVEENPRASAATH23 in #1207
- fix(common): report lang_temperatures overrides that inherited the checkpoint's temperatures by @aashish254 in #1208
- docs(calibrate): name what actually covers a bucket the abstention floor omits by @aashish254 in #1209
- docs(index): routing and the HTTP API have pages; link them, and hold the front door to the tree by @aashish254 in #1167
- feat(go): questions, sequences and answer decoding by @keemsisi in #1169
- docs(onnx): teach the stride default as half the effective window by @aashish254 in #1170
- fix(evals): an unwritable report path is a usage error, not exit 1 by @aashish254 in #1171
- ci(suites): a crashing suite leaves its output and an exit status by @aashish254 in #1172
- fix(evidence): stop calling a limitation "fitted with" when it says "not fitted" by @aashish254 in #1173
- feat(evals): attribute tournament elimination and final-choice errors by @xinpingzh in #1175
- fix(evals): read a report's identity wherever the report puts it by @aashish254 in #1177
- feat(mcp): expose core tournament selection as laya_tournament by @Rish-it in #1178
- test(batch): pin the two hook cases the batch path can still get wrong by @PerryLink in #1179
- docs(typescript-sdk): say which endpoints the client actually calls by @aashish254 in #1180
- ci(dependabot): cover the TypeScript HTTP SDK by @maxfield-allison in #1183
- fix(shortlist): hold every tournament call to the reply shape it indexes by @aashish254 in #1185
- fix(compose): forward LAYA_SHA256_DIGESTS to quickstart service in compose.yaml by @NAVEENPRASAATH23 in #1186
New Contributors
Full Changelog: v0.4.6...v0.4.7
v0.4.6
What's Changed
- fix(router): validate state is not None in route_batch before model load (#707) by @Swatantra-66 in #1165
- fix(agent): load() returns an ONNXAgent for backend="onnx"; annotate it and say so by @aashish254 in #1166
Full Changelog: v0.4.5...v0.4.6