Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Settings folder /Users/nick/.parllama
- ╭─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── Traceback (most recent call last) ────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
- │ /Users/nick/projects/other/temp/venv/lib/python3.11/site-packages/textual/worker.py:368 in _run │
- │ │
- │ 365 │ │ │ self.state = WorkerState.RUNNING │
- │ 366 │ │ │ app.log.worker(self) │
- │ 367 │ │ │ try: │
- │ ❱ 368 │ │ │ │ self._result = await self.run() │
- │ 369 │ │ │ except asyncio.CancelledError as error: │
- │ 370 │ │ │ │ self.state = WorkerState.CANCELLED │
- │ 371 │ │ │ │ self._error = error │
- │ │
- │ ╭────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── locals ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │
- │ │ app = ParLlamaApp(title='PAR LLAMA', classes={'-dark-mode'}, pseudo_classes={'focus', 'dark'}) │ │
- │ │ error = 1 validation error for ModelListPayload │ │
- │ │ models.3.details.families │ │
- │ │ Input should be a valid list [type=list_type, input_value=None, input_type=NoneType] │ │
- │ │ │ For further information visit https://errors.pydantic.dev/2.9/v/list_type │ │
- │ │ self = <Worker ERROR name='refresh_models' group='refresh_models' description='refresh_models()'> │ │
- │ │ worker_failed = WorkerFailed('Worker raised exception: 1 validation error for ModelListPayload\nmodels.3.details.families\n Input should be a valid list [type=list_type, input_value=None, input_type=NoneType]\n For further information visit https://errors.pydantic.dev/2.9/v/list_type') │ │
- │ ╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ │
- │ │
- │ /Users/nick/projects/other/temp/venv/lib/python3.11/site-packages/textual/worker.py:352 in run │
- │ │
- │ 349 │ │ Returns: ╭───────────────────────────────────────────── locals ──────────────────────────────────────────────╮ │
- │ 350 │ │ │ Return value of the work. │ self = <Worker ERROR name='refresh_models' group='refresh_models' description='refresh_models()'> │ │
- │ 351 │ │ """ ╰───────────────────────────────────────────────────────────────────────────────────────────────────╯ │
- │ ❱ 352 │ │ return await ( │
- │ 353 │ │ │ self._run_threaded() if self._thread_worker else self._run_async() │
- │ 354 │ │ ) │
- │ 355 │
- │ │
- │ /Users/nick/projects/other/temp/venv/lib/python3.11/site-packages/textual/worker.py:324 in _run_threaded │
- │ │
- │ 321 │ │ ╭───────────────────────────────────────────── locals ──────────────────────────────────────────────╮ │
- │ 322 │ │ loop = asyncio.get_running_loop() │ loop = <_UnixSelectorEventLoop running=True closed=False debug=False> │ │
- │ 323 │ │ assert loop is not None │ self = <Worker ERROR name='refresh_models' group='refresh_models' description='refresh_models()'> │ │
- │ ❱ 324 │ │ return await loop.run_in_executor(None, runner, self._work) ╰───────────────────────────────────────────────────────────────────────────────────────────────────╯ │
- │ 325 │ │
- │ 326 │ async def _run_async(self) -> ResultType: │
- │ 327 │ │ """Run an async worker. │
- │ │
- │ /opt/homebrew/Cellar/[email protected]/3.11.10/Frameworks/Python.framework/Versions/3.11/lib/python3.11/concurrent/futures/thread.py:58 in run │
- │ │
- │ 55 │ │ │ return ╭── locals ───╮ │
- │ 56 │ │ │ self = None │ │
- │ 57 │ │ try: ╰─────────────╯ │
- │ ❱ 58 │ │ │ result = self.fn(*self.args, **self.kwargs) │
- │ 59 │ │ except BaseException as exc: │
- │ 60 │ │ │ self.future.set_exception(exc) │
- │ 61 │ │ │ # Break a reference cycle with the exception 'exc' │
- │ │
- │ /Users/nick/projects/other/temp/venv/lib/python3.11/site-packages/textual/worker.py:302 in run_coroutine │
- │ │
- │ 299 │ │ │ work: Callable[[], Coroutine[None, None, ResultType]], ╭───────────────────────────────────────────────────────────────────────────────── locals ─────────────────────────────────────────────────────────────────────────────────╮ │
- │ 300 │ │ ) -> ResultType: │ work = functools.partial(<function ParLlamaApp.refresh_models at 0x10c89df80>, ParLlamaApp(title='PAR LLAMA', classes={'-dark-mode'}, pseudo_classes={'focus', 'dark'})) │ │
- │ 301 │ │ │ """Set the active worker and await coroutine.""" ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ │
- │ ❱ 302 │ │ │ return run_awaitable(work()) │
- │ 303 │ │ │
- │ 304 │ │ def run_callable(work: Callable[[], ResultType]) -> ResultType: │
- │ 305 │ │ │ """Set the active worker, and call the callable.""" │
- │ │
- │ /Users/nick/projects/other/temp/venv/lib/python3.11/site-packages/textual/worker.py:296 in run_awaitable │
- │ │
- │ 293 │ │ │ │ active_worker.set(self) ╭───────────────────────────────────────────── locals ──────────────────────────────────────────────╮ │
- │ 294 │ │ │ │ return await work │ self = <Worker ERROR name='refresh_models' group='refresh_models' description='refresh_models()'> │ │
- │ 295 │ │ │ │ work = <coroutine object ParLlamaApp.refresh_models at 0x10c8ff640> │ │
- │ ❱ 296 │ │ │ return asyncio.run(do_work()) ╰───────────────────────────────────────────────────────────────────────────────────────────────────╯ │
- │ 297 │ │ │
- │ 298 │ │ def run_coroutine( │
- │ 299 │ │ │ work: Callable[[], Coroutine[None, None, ResultType]], │
- │ │
- │ /opt/homebrew/Cellar/[email protected]/3.11.10/Frameworks/Python.framework/Versions/3.11/lib/python3.11/asyncio/runners.py:190 in run │
- │ │
- │ 187 │ │ │ "asyncio.run() cannot be called from a running event loop") ╭──────────────────────────────────────────────── locals ─────────────────────────────────────────────────╮ │
- │ 188 │ │ debug = None │ │
- │ 189 │ with Runner(debug=debug) as runner: │ main = <coroutine object Worker._run_threaded.<locals>.run_awaitable.<locals>.do_work at 0x10bed7440> │ │
- │ ❱ 190 │ │ return runner.run(main) │ runner = <asyncio.runners.Runner object at 0x114f12290> │ │
- │ 191 ╰─────────────────────────────────────────────────────────────────────────────────────────────────────────╯ │
- │ 192 │
- │ 193 def _cancel_all_tasks(loop): │
- │ │
- │ /opt/homebrew/Cellar/[email protected]/3.11.10/Frameworks/Python.framework/Versions/3.11/lib/python3.11/asyncio/runners.py:118 in run │
- │ │
- │ 115 │ │ │
- │ 116 │ │ self._interrupt_count = 0 │
- │ 117 │ │ try: │
- │ ❱ 118 │ │ │ return self._loop.run_until_complete(task) │
- │ 119 │ │ except exceptions.CancelledError: │
- │ 120 │ │ │ if self._interrupt_count > 0: │
- │ 121 │ │ │ │ uncancel = getattr(task, "uncancel", None) │
- │ │
- │ ╭───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── locals ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │
- │ │ context = <_contextvars.Context object at 0x10ccc2880> │ │
- │ │ coro = <coroutine object Worker._run_threaded.<locals>.run_awaitable.<locals>.do_work at 0x10bed7440> │ │
- │ │ self = <asyncio.runners.Runner object at 0x114f12290> │ │
- │ │ sigint_handler = None │ │
- │ │ task = <Task finished name='Task-869' coro=<Worker._run_threaded.<locals>.run_awaitable.<locals>.do_work() done, defined at /Users/nick/projects/other/temp/venv/lib/python3.11/site-packages/textual/worker.py:292> exception=1 validation error for ModelListPayload │ │
- │ │ models.3.details.families │ │
- │ │ Input should be a valid list [type=list_type, input_value=None, input_type=NoneType] │ │
- │ │ │ For further information visit https://errors.pydantic.dev/2.9/v/list_type> │ │
- │ ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ │
- │ │
- │ /opt/homebrew/Cellar/[email protected]/3.11.10/Frameworks/Python.framework/Versions/3.11/lib/python3.11/asyncio/base_events.py:654 in run_until_complete │
- │ │
- │ 651 │ │ if not future.done(): │
- │ 652 │ │ │ raise RuntimeError('Event loop stopped before Future completed.') │
- │ 653 │ │ │
- │ ❱ 654 │ │ return future.result() │
- │ 655 │ │
- │ 656 │ def stop(self): │
- │ 657 │ │ """Stop running the event loop. │
- │ │
- │ ╭────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── locals ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮ │
- │ │ future = <Task finished name='Task-869' coro=<Worker._run_threaded.<locals>.run_awaitable.<locals>.do_work() done, defined at /Users/nick/projects/other/temp/venv/lib/python3.11/site-packages/textual/worker.py:292> exception=1 validation error for ModelListPayload │ │
- │ │ models.3.details.families │ │
- │ │ Input should be a valid list [type=list_type, input_value=None, input_type=NoneType] │ │
- │ │ │ For further information visit https://errors.pydantic.dev/2.9/v/list_type> │ │
- │ │ new_task = False │ │
- │ │ self = <_UnixSelectorEventLoop running=False closed=True debug=False> │ │
- │ ╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ │
- │ │
- │ /Users/nick/projects/other/temp/venv/lib/python3.11/site-packages/textual/worker.py:294 in do_work │
- │ │
- │ 291 │ │ │ ╭───────────────────────────────────────────── locals ──────────────────────────────────────────────╮ │
- │ 292 │ │ │ async def do_work() -> ResultType: │ self = <Worker ERROR name='refresh_models' group='refresh_models' description='refresh_models()'> │ │
- │ 293 │ │ │ │ active_worker.set(self) │ work = <coroutine object ParLlamaApp.refresh_models at 0x10c8ff640> │ │
- │ ❱ 294 │ │ │ │ return await work ╰───────────────────────────────────────────────────────────────────────────────────────────────────╯ │
- │ 295 │ │ │ │
- │ 296 │ │ │ return asyncio.run(do_work()) │
- │ 297 │
- │ │
- │ /Users/nick/projects/other/temp/venv/lib/python3.11/site-packages/parllama/app.py:573 in refresh_models │
- │ │
- │ 570 │ │ self.is_refreshing = True ╭──────────────────────────────────────────── locals ─────────────────────────────────────────────╮ │
- │ 571 │ │ try: │ self = ParLlamaApp(title='PAR LLAMA', classes={'-dark-mode'}, pseudo_classes={'focus', 'dark'}) │ │
- │ 572 │ │ │ self.post_message_all(StatusMessage("Local model list refreshing...")) ╰─────────────────────────────────────────────────────────────────────────────────────────────────╯ │
- │ ❱ 573 │ │ │ ollama_dm.refresh_models() │
- │ 574 │ │ │ self.post_message_all(StatusMessage("Local model list refreshed")) │
- │ 575 │ │ │ self.post_message_all(LocalModelListLoaded()) │
- │ 576 │ │ │ self.post_message_all(ProviderModelsChanged(provider=LlmProvider.OLLAMA)) │
- │ │
- │ /Users/nick/projects/other/temp/venv/lib/python3.11/site-packages/parllama/ollama_data_manager.py:150 in refresh_models │
- │ │
- │ 147 │ ╭────────── locals ──────────╮ │
- │ 148 │ def refresh_models(self) -> list[LocalModelListItem]: │ self = OllamaDataManager() │ │
- │ 149 │ │ """Refresh all local model data.""" ╰────────────────────────────╯ │
- │ ❱ 150 │ │ self.models = self._get_all_model_data() │
- │ 151 │ │ return self.models │
- │ 152 │ │
- │ 153 │ def get_model_select_options(self) -> list[tuple[str, str]]: │
- │ │
- │ /Users/nick/projects/other/temp/venv/lib/python3.11/site-packages/parllama/ollama_data_manager.py:140 in _get_all_model_data │
- │ │
- │ 137 │ def _get_all_model_data() -> list[LocalModelListItem]: ╭──── locals ─────╮ │
- │ 138 │ │ """Get all model data.""" │ all_models = [] │ │
- │ 139 │ │ all_models: list[LocalModelListItem] = [] ╰─────────────────╯ │
- │ ❱ 140 │ │ res = ModelListPayload(**ollama.Client(host=settings.ollama_host).list()) │
- │ 141 │ │ │
- │ 142 │ │ for model in res.models: │
- │ 143 │ │ │ res3 = FullModel(**model.model_dump()) │
- │ │
- │ /Users/nick/projects/other/temp/venv/lib/python3.11/site-packages/pydantic/main.py:212 in __init__ │
- │ │
- │ 209 │ │ """ ╭──────────────────────────────────────────────────────────────────────────────────── locals ────────────────────────────────────────────────────────────────────────────────────╮ │
- │ 210 │ │ # `__tracebackhide__` tells pytest and some other tools to omit this function fr │ data = { │ │
- │ 211 │ │ __tracebackhide__ = True │ │ 'models': [ │ │
- │ ❱ 212 │ │ validated_self = self.__pydantic_validator__.validate_python(data, self_instance │ │ │ { │ │
- │ 213 │ │ if self is not validated_self: │ │ │ │ 'name': 'starcoder2:latest', │ │
- │ 214 │ │ │ warnings.warn( │ │ │ │ 'model': 'starcoder2:latest', │ │
- │ 215 │ │ │ │ 'A custom validator is returning a value other than `self`.\n' │ │ │ │ 'modified_at': '2024-10-13T11:40:23.350877222-04:00', │ │
- │ │ │ │ │ 'size': 1709901728, │ │
- │ │ │ │ │ 'digest': '9f4ae0aff61ee24fe4b7d9714c9382b5172551fa8e95aa064452ec2e62610835', │ │
- │ │ │ │ │ 'details': { │ │
- │ │ │ │ │ │ 'parent_model': '', │ │
- │ │ │ │ │ │ 'format': 'gguf', │ │
- │ │ │ │ │ │ 'family': 'starcoder2', │ │
- │ │ │ │ │ │ 'families': ['starcoder2'], │ │
- │ │ │ │ │ │ 'parameter_size': '3B', │ │
- │ │ │ │ │ │ 'quantization_level': 'Q4_0' │ │
- │ │ │ │ │ } │ │
- │ │ │ │ }, │ │
- │ │ │ │ { │ │
- │ │ │ │ │ 'name': 'llama3:latest', │ │
- │ │ │ │ │ 'model': 'llama3:latest', │ │
- │ │ │ │ │ 'modified_at': '2024-07-01T23:13:23.818943005-04:00', │ │
- │ │ │ │ │ 'size': 4661224676, │ │
- │ │ │ │ │ 'digest': '365c0bd3c000a25d28ddbf732fe1c6add414de7275464c4e4d1c3b5fcb5d8ad1', │ │
- │ │ │ │ │ 'details': {'parent_model': '', 'format': 'gguf', 'family': 'llama', 'families': ['llama'], 'parameter_size': '8.0B', 'quantization_level': 'Q4_0'} │ │
- │ │ │ │ }, │ │
- │ │ │ │ { │ │
- │ │ │ │ │ 'name': 'gemma2:latest', │ │
- │ │ │ │ │ 'model': 'gemma2:latest', │ │
- │ │ │ │ │ 'modified_at': '2024-06-27T14:50:35.829818936-04:00', │ │
- │ │ │ │ │ 'size': 5453010643, │ │
- │ │ │ │ │ 'digest': 'f67334982954ce56d25f7d55dcd5632ad66f26ca3fc88f6cb3f3439c6e211d2c', │ │
- │ │ │ │ │ 'details': {'parent_model': '', 'format': 'gguf', 'family': 'gemma2', 'families': ['gemma2'], 'parameter_size': '9.2B', 'quantization_level': 'Q4_0'} │ │
- │ │ │ │ }, │ │
- │ │ │ │ { │ │
- │ │ │ │ │ 'name': 'codellama:latest', │ │
- │ │ │ │ │ 'model': 'codellama:latest', │ │
- │ │ │ │ │ 'modified_at': '2024-06-26T13:15:54.841038136-04:00', │ │
- │ │ │ │ │ 'size': 3825910662, │ │
- │ │ │ │ │ 'digest': '8fdf8f752f6e80de33e82f381aba784c025982752cd1ae9377add66449d2225f', │ │
- │ │ │ │ │ 'details': {'parent_model': '', 'format': 'gguf', 'family': 'llama', 'families': None, 'parameter_size': '7B', 'quantization_level': 'Q4_0'} │ │
- │ │ │ │ }, │ │
- │ │ │ │ { │ │
- │ │ │ │ │ 'name': 'all-minilm:latest', │ │
- │ │ │ │ │ 'model': 'all-minilm:latest', │ │
- │ │ │ │ │ 'modified_at': '2024-06-24T19:12:37.624213542-04:00', │ │
- │ │ │ │ │ 'size': 45960996, │ │
- │ │ │ │ │ 'digest': '1b226e2802dbb772b5fc32a58f103ca1804ef7501331012de126ab22f67475ef', │ │
- │ │ │ │ │ 'details': {'parent_model': '', 'format': 'gguf', 'family': 'bert', 'families': ['bert'], 'parameter_size': '23M', 'quantization_level': 'F16'} │ │
- │ │ │ │ } │ │
- │ │ │ ] │ │
- │ │ } │ │
- │ │ self = ModelListPayload() │ │
- │ ╰────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯ │
- ╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
- ValidationError: 1 validation error for ModelListPayload
- models.3.details.families
- Input should be a valid list [type=list_type, input_value=None, input_type=NoneType]
- For further information visit https://errors.pydantic.dev/2.9/v/list_type
- (venv)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement