Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
d9d6c65
WIP: update tests with new SDK
andrewphilipsmith Apr 23, 2025
5de42f7
More updates to tests with new SDK
andrewphilipsmith Apr 24, 2025
283a564
Update GeminiAPI class string & chat methods with new SDK
andrewphilipsmith Apr 24, 2025
ef96645
Update GeminiAPI class string & chat methods with new SDK
andrewphilipsmith Apr 24, 2025
c39ea9b
Merge branch 'update-gemini-sdk' of github.com:alan-turing-institute/…
andrewphilipsmith Apr 25, 2025
32cf50d
Update gemini_media.py
andrewphilipsmith Apr 28, 2025
c80273f
fix bug in '_get_client' method
andrewphilipsmith Apr 29, 2025
60ec15b
fix bug in '_get_client' method
andrewphilipsmith Apr 29, 2025
d561e07
linting and copilot review changes
andrewphilipsmith Apr 30, 2025
7a2af56
WIP: migrate gemini media functions
andrewphilipsmith May 1, 2025
6e66327
tweak dependency versions
andrewphilipsmith May 6, 2025
487716d
Update pyproject.toml
andrewphilipsmith May 6, 2025
9fa2ad1
WIP: attempt tighter deps version restrictions
andrewphilipsmith May 6, 2025
68b5de1
Sorted dependencies in pyproject.toml
andrewphilipsmith May 6, 2025
0ef2373
WIP: tidy up and linting
andrewphilipsmith May 6, 2025
6c975bc
Tweak to comment
andrewphilipsmith May 7, 2025
5c5f4c4
failing test to demonstrate the thinking params
andrewphilipsmith May 15, 2025
2e001df
read thinking params from general params dict
andrewphilipsmith May 15, 2025
cac04f4
Adds failing test case
andrewphilipsmith May 16, 2025
1c87646
adds parsing function
andrewphilipsmith May 16, 2025
fd23441
Add "thinking_text" key to output
andrewphilipsmith May 16, 2025
4511cf0
Minor tweaks from copilot code review
andrewphilipsmith May 16, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
123 changes: 92 additions & 31 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -13,38 +13,87 @@ readme = "README.md"

[tool.poetry.dependencies]
python = ">=3.11,<4.0"
tqdm = "^4.66.4"
python-dotenv = "^1.0.1"
pandas = "^2.2.3"
black = { version = "^24.3.0", optional = true }

# Sorted primary dependencies
accelerate = { version = "^1.3.0", optional = true } # working with 1.6.0
aiohttp = { version = "^3.11.18", optional = false }
anthropic = { version = "^0.45.2", optional = true }
black = { version = "^24.3.0", optional = true } # working with 24.10.0
cli-test-helpers = { version = "^4.0.0", optional = true } # working with 4.1.0
google-cloud-aiplatform = { version = "^1.71.1", optional = true }
google-genai = { version = "^1.11.0", optional = true } # working with 1.13.0
google-generativeai = { version = "^0.8.4", optional = false }
huggingface-hub = { version = "^0.28.0", optional = true } # working with 0.28.1
ipykernel = { version = "^6.29.4", optional = true } # working with 6.29.5
isort = { version = "^5.13.2", optional = true }
pre-commit = { version = "^3.7.0", optional = true }
pytest = { version = "^8.1.1", optional = true }
pytest-asyncio = { version = "^0.23.6", optional = true }
pytest-cov = { version = "^5.0.0", optional = true }
ipykernel = { version = "^6.29.4", optional = true }
mkdocs-material = { version = "^9.5.26", optional = true }
mkdocstrings-python = { version = "^1.10.3", optional = true }
mkdocs-gen-files = { version = "^0.5.0", optional = true }
mkdocs-literate-nav = { version = "^0.6.1", optional = true }
mkdocs-section-index = { version = "^0.3.9", optional = true }
mkdocs-jupyter = { version = "^0.24.7", optional = true } # working with 0.24.8
mkdocs-literate-nav = { version = "^0.6.1", optional = true } # working with 0.6.2
mkdocs-material = { version = "^9.6.12", optional = false }
mkdocs-same-dir = { version = "^0.1.3", optional = true }
mkdocs-jupyter = { version = "^0.24.7", optional = true }
cli-test-helpers = { version = "^4.0.0", optional = true }
vertexai = { version ="^1.71.1", optional = true }
google-cloud-aiplatform = { version = "^1.71.1", optional = true }
google-generativeai = { version = "^0.8.4", optional = true }
google-genai = { version = "^0.7.0", optional = true }
openai = { version = "^1.60.0", optional = true }
pillow = { version = "^11.1.0", optional = true }
ollama = { version = "^0.4.7", optional = true }
huggingface-hub = { version = "^0.28.0", optional = true }
mkdocs-section-index = { version = "^0.3.10", optional = false }
mkdocstrings-python = { version = "^1.10.3", optional = true } # working with 1.16.10
ollama = { version = "^0.4.8", optional = false }
openai = { version = "^1.77.0", optional = false }
pandas = "^2.2.3"
pillow = { version = "^11.2.1", optional = false }
pre-commit = { version = "^3.7.0", optional = true } # working with 3.8.0
pytest = { version = "^8.1.1", optional = true } # working with 8.3.5
pytest-asyncio = { version = "^0.23.6", optional = true } # working with 0.23.8
pytest-cov = { version = "^5.0.0", optional = true }
python-dotenv = "^1.0.1" # working with 1.1.0
quart = { version = "^0.20.0", optional = true }
transformers = { version = "^4.48.1", optional = true }
torch = { version = "^2.6.0", optional = true }
accelerate = { version = "^1.3.0", optional = true }
aiohttp = { version = "^3.11.11", optional = true }
anthropic = { version = "^0.45.2", optional = true }
torch = { version = "^2.7.0", optional = false }
tqdm = "^4.67.1" # working with 4.67.1
transformers = { version = "^4.50.3", optional = true } # working with 4.50.3
urllib3 = { version = "^2.4.0", optional = false }
vertexai = { version ="^1.71.1", optional = true }

# Sorted secondary dependencies
# These are not directly used in the code, but are required by the primary dependencies
# They are specified here, because the automatic dependency resolution of pip
# can be slow and sometimes times-out without resolving them all.
beautifulsoup4 = { version = "^4.13.4", optional = false } # Secondary
certifi = { version = "^2025.4.26", optional = false } # Secondary
charset-normalizer = { version = "^3.4.2", optional = false } # Secondary
debugpy = { version = "^1.8.14", optional = false } # Secondary
frozenlist = { version = "^1.6.0", optional = false } # Secondary
google-api-core = { version = "^2.25.0rc0", optional = false } # Secondary
google-api-python-client = { version = "^2.166.0", optional = false } # Secondary
google-auth = { version = "^2.40.0", optional = false } # Secondary
google-auth-httplib2 = { version = "^0.2.0", optional = false } # Secondary
googleapis-common-protos = { version = "^1.70.0", optional = false } # Secondary
griffe = { version = "^1.7.3", optional = false } # Secondary
h11 = { version = "^0.16.0", optional = false } # Secondary
httpcore = { version = "^1.0.9", optional = false } # Secondary
httplib2 = { version = "^0.22.0", optional = false } # Secondary
identify = { version = "^2.6.10", optional = false } # Secondary
ipython = { version = "^9.2.0", optional = false } # Secondary
jsonschema-specifications = { version = "^2025.4.1", optional = false } # Secondary
jupytext = { version = "^1.17.1", optional = false } # Secondary
Markdown = { version = "^3.8", optional = false } # Secondary
multidict = { version = "^6.4.3", optional = false } # Secondary
mypy_extensions = { version = "^1.1.0", optional = false } # Secondary
numpy = { version = "^2.2.5", optional = false } # Secondary
packaging = { version = "^25.0", optional = false } # Secondary
pydantic = { version = "^2.11.4", optional = false } # Secondary
pydantic_core = { version = "^2.33.2", optional = false } # Secondary
pymdown-extensions = { version = "^10.15", optional = false } # Secondary
pyparsing = { version = "^3.2.3", optional = false } # Secondary
pytest-random-order = { version = "^1.1.1", optional = false } # Secondary
pyzmq = { version = "^26.4.0", optional = false } # Secondary
rsa = { version = "^4.9.1", optional = false } # Secondary
ruff = { version = "^0.11.6", optional = false } # Secondary
setuptools = { version = "^80.3.1", optional = false } # Secondary
shapely = { version = "^2.1.0", optional = false } # Secondary
snakeviz = { version = "^2.2.2", optional = false } # Secondary
soupsieve = { version = "^2.7", optional = false } # Secondary
sympy = { version = "^1.14.0", optional = false } # Secondary
typing_extensions = { version = "^4.13.2", optional = false } # Secondary
virtualenv = { version = "^20.31.1", optional = false } # Secondary
websockets = { version = "^15.0.1", optional = false } # Secondary
yarl = { version = "^1.20.0", optional = false } # Secondary


[tool.poetry.extras]
all = [
Expand All @@ -66,7 +115,7 @@ all = [
"cli-test-helpers",
"vertexai",
"google-cloud-aiplatform",
"google-generativeai",
# "google-generativeai",
"google-genai",
"openai",
"pillow",
Expand Down Expand Up @@ -97,8 +146,20 @@ dev = [
"mkdocs-jupyter",
"cli-test-helpers",
]
gemini = ["vertexai", "google-cloud-aiplatform", "google-generativeai", "google-genai", "pillow"]
vertexai = ["vertexai", "google-cloud-aiplatform", "google-generativeai", "google-genai", "pillow"]
gemini = [
"vertexai",
"google-cloud-aiplatform",
# "google-generativeai", # TODO: deprecated - to be removed
"google-genai",
"pillow"
]
vertexai = [
"vertexai",
"google-cloud-aiplatform",
# "google-generativeai", # TODO: deprecated - to be removed
"google-genai",
"pillow"
]
azure_openai = ["openai", "pillow"]
openai = ["openai", "pillow"]
ollama = ["ollama"]
Expand Down
Loading