tuieval 0.2.0.dev119__tar.gz → 0.2.0.dev120__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/CHANGELOG.md +1 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/PKG-INFO +1 -1
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/_version.py +2 -2
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/tui.py +2 -2
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/tests/test_tuieval.py +11 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/.gitignore +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/LICENSE +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/README.md +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/RELEASING.md +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/docs/images/brand/README.md +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/docs/images/brand/favicon.ico +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/docs/images/brand/readme-header.png +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/docs/images/brand/social-preview.png +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/docs/images/brand/tuieval-icon-1024.png +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/docs/images/brand/tuieval-icon-128.png +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/docs/images/brand/tuieval-icon-16.png +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/docs/images/brand/tuieval-icon-16.svg +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/docs/images/brand/tuieval-icon-256.png +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/docs/images/brand/tuieval-icon-32.png +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/docs/images/brand/tuieval-icon-48.png +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/docs/images/brand/tuieval-icon-512.png +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/docs/images/brand/tuieval-icon-64.png +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/docs/images/brand/tuieval-icon-animated.svg +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/docs/images/brand/tuieval-icon.svg +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/docs/images/tui-answer-reasoning.png +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/docs/images/tui-run-reasoning.png +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/docs/images/tui-setup.png +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/docs/models.md +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/docs/writing-packs.md +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/pyproject.toml +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/__init__.py +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/__main__.py +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/builtin.toml +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/cli.py +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/client.py +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/compare.py +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/dates.py +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/doctor.py +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/engine.py +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/export.py +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/graders/__init__.py +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/graders/answer.py +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/graders/code.py +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/graders/rag.py +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/graders/reply.py +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/graders/tool_call.py +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/insights.py +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/logs.py +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/machines.py +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/onboard.py +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/packs.py +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/profiles.py +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/pta.py +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/remove.py +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/run_evals.py +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/scaffold.py +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/selftest.py +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/templates/models.toml +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/templates/packs/answer/pack.toml +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/templates/packs/answer/system.txt +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/templates/packs/answer/tests.yaml +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/templates/packs/code/pack.toml +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/templates/packs/code/system.txt +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/templates/packs/code/tests.yaml +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/templates/packs/rag/pack.toml +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/templates/packs/rag/system.txt +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/templates/packs/rag/tests.yaml +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/templates/packs/reply/pack.toml +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/templates/packs/reply/system.txt +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/templates/packs/reply/tests.yaml +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/templates/packs/tool_call/pack.toml +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/templates/packs/tool_call/system.txt +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/templates/packs/tool_call/tests.yaml +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/templates/packs/tool_call/tools.yaml +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/tune.py +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/verdict.py +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/watch_proxy.py +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/workspace.py +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/yamlout.py +0 -0
- {tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/tests/mock_server.py +0 -0
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
## Unreleased
|
|
4
4
|
|
|
5
|
+
- Fix: `v` on the run screen switches to the last model still running when the stream shows one that has finished.
|
|
5
6
|
- Setup opens with no models ticked: at launch, after New run, and after Back from a run or tune. Packs and options are still remembered.
|
|
6
7
|
- Tuning: a server that refuses the `ignore_eos` request field is asked again without it, so strict servers can be tuned; the profile notes that workload answers may end early.
|
|
7
8
|
- Fix: a server that crashes mid-request (the stream ends with no finish reason) was graded as an empty or cut-short answer; it's a server error now, never counted against the model.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: tuieval
|
|
3
|
-
Version: 0.2.0.
|
|
3
|
+
Version: 0.2.0.dev120
|
|
4
4
|
Summary: Evaluate local and frontier LLMs on your own questions: accuracy, speed, tokens and PASS/FAIL verdicts, in the terminal.
|
|
5
5
|
Project-URL: Homepage, https://github.com/ashe-wb/tuieval
|
|
6
6
|
Project-URL: Issues, https://github.com/ashe-wb/tuieval/issues
|
|
@@ -18,7 +18,7 @@ version_tuple: tuple[int | str, ...]
|
|
|
18
18
|
commit_id: str | None
|
|
19
19
|
__commit_id__: str | None
|
|
20
20
|
|
|
21
|
-
__version__ = version = '0.2.0.
|
|
22
|
-
__version_tuple__ = version_tuple = (0, 2, 0, '
|
|
21
|
+
__version__ = version = '0.2.0.dev120'
|
|
22
|
+
__version_tuple__ = version_tuple = (0, 2, 0, 'dev120')
|
|
23
23
|
|
|
24
24
|
__commit_id__ = commit_id = None
|
|
@@ -2779,8 +2779,8 @@ class RunScreen(Screen):
|
|
|
2779
2779
|
def action_watch_next(self):
|
|
2780
2780
|
"""Stream the next model running alongside (from its next answer)."""
|
|
2781
2781
|
active = self.active()
|
|
2782
|
-
if
|
|
2783
|
-
self.notify("Only one model is running right now.")
|
|
2782
|
+
if not active or active == [self.watch]:
|
|
2783
|
+
self.notify("Only one model is running right now." if active else "No model is running right now.")
|
|
2784
2784
|
return
|
|
2785
2785
|
self.watch = active[(active.index(self.watch) + 1) % len(active)] if self.watch in active else active[0]
|
|
2786
2786
|
with self.buf_lock:
|
|
@@ -847,6 +847,17 @@ class Parallel(unittest.TestCase):
|
|
|
847
847
|
self.assertEqual({out["first"], out["switched"]}, {"a", "b"}) # v streams the other model
|
|
848
848
|
self.assertTrue(any(r.get("ran_alongside") for r in self.results("a")["results"]))
|
|
849
849
|
|
|
850
|
+
def test_watch_next_moves_to_the_last_model_running(self):
|
|
851
|
+
from tuieval.tui import RunScreen
|
|
852
|
+
run = unittest.mock.MagicMock(watch="a", buf={"reasoning": [], "answer": []}, buf_lock=threading.Lock())
|
|
853
|
+
run.active.return_value = ["b"] # a finished; only b is still running
|
|
854
|
+
RunScreen.action_watch_next(run)
|
|
855
|
+
self.assertEqual(run.watch, "b")
|
|
856
|
+
run.active.return_value = ["b"]
|
|
857
|
+
RunScreen.action_watch_next(run) # already watching the only one
|
|
858
|
+
self.assertEqual(run.watch, "b")
|
|
859
|
+
run.notify.assert_called_with("Only one model is running right now.")
|
|
860
|
+
|
|
850
861
|
def test_skip_one_model_keeps_the_other(self):
|
|
851
862
|
e, events = self.engine()
|
|
852
863
|
jobs = e.plan(["a", "b"], ["apps"], None, "certify", False, {})
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/templates/packs/tool_call/pack.toml
RENAMED
|
File without changes
|
{tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/templates/packs/tool_call/system.txt
RENAMED
|
File without changes
|
{tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/templates/packs/tool_call/tests.yaml
RENAMED
|
File without changes
|
{tuieval-0.2.0.dev119 → tuieval-0.2.0.dev120}/src/tuieval/templates/packs/tool_call/tools.yaml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|