Skip to content

Commit 8b929ab

Browse files
committed
python user agent
add a user agent to ollama-python requests
1 parent eee32dd commit 8b929ab

File tree

1 file changed

+13
-0
lines changed

1 file changed

+13
-0
lines changed

ollama/_client.py

Lines changed: 13 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,15 @@ def __init__(
3745
- `timeout`: None
3846
`kwargs` are passed to the httpx client.
3947
"""
48+
49+
headers = kwargs.pop('headers', {})
50+
headers['user-agent'] = f'ollama-python/{__version__} ({platform.machine()} {platform.system().lower()}) Python/{platform.python_version()}'
51+
4052
self._client = client(
4153
base_url=_parse_host(host or os.getenv('OLLAMA_HOST')),
4254
follow_redirects=follow_redirects,
4355
timeout=timeout,
56+
headers=headers,
4457
**kwargs,
4558
)
4659

0 commit comments

Comments
 (0)