Skip to content

Commit fcdf577

Browse files
authored
Merge pull request #58 from ollama/mxyng/python-user-agent
python user agent
2 parents eee32dd + ec8bf88 commit fcdf577

File tree

1 file changed

+15
-0
lines changed

1 file changed

+15
-0
lines changed

ollama/_client.py

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import json
44
import httpx
55
import binascii
6+
import platform
67
import urllib.parse
78
from os import PathLike
89
from pathlib import Path
@@ -18,6 +19,13 @@
1819
else:
1920
from collections.abc import Iterator, AsyncIterator
2021

22+
from importlib import metadata
23+
24+
try:
25+
__version__ = metadata.version('ollama')
26+
except metadata.PackageNotFoundError:
27+
__version__ = '0.0.0'
28+
2129
from ollama._types import Message, Options, RequestError, ResponseError
2230

2331

@@ -37,10 +45,17 @@ def __init__(
3745
- `timeout`: None
3846
`kwargs` are passed to the httpx client.
3947
"""
48+
49+
headers = kwargs.pop('headers', {})
50+
headers['Content-Type'] = 'application/json'
51+
headers['Accept'] = 'application/json'
52+
headers['User-Agent'] = f'ollama-python/{__version__} ({platform.machine()} {platform.system().lower()}) Python/{platform.python_version()}'
53+
4054
self._client = client(
4155
base_url=_parse_host(host or os.getenv('OLLAMA_HOST')),
4256
follow_redirects=follow_redirects,
4357
timeout=timeout,
58+
headers=headers,
4459
**kwargs,
4560
)
4661

0 commit comments

Comments
 (0)