mirror of
https://github.com/ollama/ollama-python.git
synced 2026-05-03 12:52:35 +00:00
Merge b50962d169 into dbccf192ac
This commit is contained in:
+3
-1
@@ -562,6 +562,8 @@ class ShowRequest(BaseRequest):
|
|||||||
|
|
||||||
|
|
||||||
class ShowResponse(SubscriptableBaseModel):
|
class ShowResponse(SubscriptableBaseModel):
|
||||||
|
model_config = ConfigDict(populate_by_name=True)
|
||||||
|
|
||||||
modified_at: Optional[datetime] = None
|
modified_at: Optional[datetime] = None
|
||||||
|
|
||||||
template: Optional[str] = None
|
template: Optional[str] = None
|
||||||
@@ -572,7 +574,7 @@ class ShowResponse(SubscriptableBaseModel):
|
|||||||
|
|
||||||
details: Optional[ModelDetails] = None
|
details: Optional[ModelDetails] = None
|
||||||
|
|
||||||
modelinfo: Optional[Mapping[str, Any]] = Field(alias='model_info')
|
modelinfo: Optional[Mapping[str, Any]] = Field(default=None, alias='model_info')
|
||||||
|
|
||||||
parameters: Optional[str] = None
|
parameters: Optional[str] = None
|
||||||
|
|
||||||
|
|||||||
@@ -92,3 +92,35 @@ def test_create_request_serialization_license_list():
|
|||||||
request = CreateRequest(model='test-model', license=['MIT', 'Apache-2.0'])
|
request = CreateRequest(model='test-model', license=['MIT', 'Apache-2.0'])
|
||||||
serialized = request.model_dump()
|
serialized = request.model_dump()
|
||||||
assert serialized['license'] == ['MIT', 'Apache-2.0']
|
assert serialized['license'] == ['MIT', 'Apache-2.0']
|
||||||
|
|
||||||
|
|
||||||
|
def test_show_response_without_model_info():
|
||||||
|
"""ShowResponse should accept responses that omit model_info (e.g. cloud models).
|
||||||
|
|
||||||
|
Regression test for https://github.com/ollama/ollama-python/issues/607
|
||||||
|
"""
|
||||||
|
from ollama._types import ShowResponse
|
||||||
|
|
||||||
|
# model_info completely absent from response
|
||||||
|
resp = ShowResponse()
|
||||||
|
assert resp.modelinfo is None
|
||||||
|
|
||||||
|
resp = ShowResponse(template='{{ .Prompt }}')
|
||||||
|
assert resp.modelinfo is None
|
||||||
|
assert resp.template == '{{ .Prompt }}'
|
||||||
|
|
||||||
|
|
||||||
|
def test_show_response_with_model_info_alias():
|
||||||
|
"""ShowResponse should accept model_info via its alias."""
|
||||||
|
from ollama._types import ShowResponse
|
||||||
|
|
||||||
|
resp = ShowResponse(model_info={'general.architecture': 'llama'})
|
||||||
|
assert resp.modelinfo == {'general.architecture': 'llama'}
|
||||||
|
|
||||||
|
|
||||||
|
def test_show_response_with_modelinfo_field_name():
|
||||||
|
"""ShowResponse should accept modelinfo via its Python field name."""
|
||||||
|
from ollama._types import ShowResponse
|
||||||
|
|
||||||
|
resp = ShowResponse(modelinfo={'general.architecture': 'llama'})
|
||||||
|
assert resp.modelinfo == {'general.architecture': 'llama'}
|
||||||
|
|||||||
Reference in New Issue
Block a user