summaryrefslogtreecommitdiff
path: root/Omni/Bild/Deps/openai-python.nix
diff options
context:
space:
mode:
authorBen Sima <ben@bsima.me>2025-02-04 21:18:03 -0500
committerBen Sima <ben@bsima.me>2025-02-04 21:18:03 -0500
commit9f5b334eb6d0f64460f14d76255b096777a46332 (patch)
treedb357ca2a933456e1f35c17a1c85000fb5a64b9d /Omni/Bild/Deps/openai-python.nix
parent86ea51353c223cdc82cb8ebd013d58d70a7e646a (diff)
Update ollama, llm-ollama, openai-python, llm
I couldn't use llm-ollama because it required some package upgrades, so I started going down that rabbit hole and ended up 1) realizing that these packages are way out of date now, and 2) fiddling with overrides to get everything to work. I finally figured it out, the `postPatch` in ollama-python was throwing me off for like half a day. Anyway, one thing to note is that these are changing fast and I need to either move onto nixpkgs unstable for python stuff, or maintain my own builds of all of these. Not sure which is more appropriate right now. Oh and I had to fixup some logging stuff in Biz/Storybook.py because ruff started complaining about something, which is weird because I don't think the version changed? But it was easy enough to change.
Diffstat (limited to 'Omni/Bild/Deps/openai-python.nix')
-rw-r--r--Omni/Bild/Deps/openai-python.nix99
1 files changed, 99 insertions, 0 deletions
diff --git a/Omni/Bild/Deps/openai-python.nix b/Omni/Bild/Deps/openai-python.nix
new file mode 100644
index 0000000..79db11c
--- /dev/null
+++ b/Omni/Bild/Deps/openai-python.nix
@@ -0,0 +1,99 @@
+{
+ lib,
+ buildPythonPackage,
+ pythonOlder,
+ # build-system
+ hatchling,
+ hatch-fancy-pypi-readme,
+ # dependencies
+ anyio,
+ distro,
+ httpx,
+ jiter,
+ pydantic,
+ sniffio,
+ tqdm,
+ typing-extensions,
+ numpy,
+ pandas,
+ pandas-stubs,
+ # check deps
+ pytestCheckHook,
+ dirty-equals,
+ inline-snapshot,
+ nest-asyncio,
+ pytest-asyncio,
+ pytest-mock,
+ respx,
+ sources,
+}:
+buildPythonPackage rec {
+ pname = "openai";
+ version = sources.openai-python.version;
+ pyproject = true;
+
+ disabled = pythonOlder "3.8";
+
+ src = sources.openai-python;
+
+ build-system = [
+ hatchling
+ hatch-fancy-pypi-readme
+ ];
+
+ dependencies = [
+ anyio
+ distro
+ httpx
+ jiter
+ pydantic
+ sniffio
+ tqdm
+ typing-extensions
+ ];
+
+ optional-dependencies = {
+ datalib = [
+ numpy
+ pandas
+ pandas-stubs
+ ];
+ };
+
+ pythonImportsCheck = ["openai"];
+
+ nativeCheckInputs = [
+ pytestCheckHook
+ dirty-equals
+ inline-snapshot
+ nest-asyncio
+ pytest-asyncio
+ pytest-mock
+ respx
+ ];
+
+ pytestFlagsArray = [
+ "-W"
+ "ignore::DeprecationWarning"
+ ];
+
+ disabledTests = [
+ # Tests make network requests
+ "test_copy_build_request"
+ "test_basic_attribute_access_works"
+ ];
+
+ disabledTestPaths = [
+ # Test makes network requests
+ "tests/api_resources"
+ ];
+
+ meta = with lib; {
+ description = "Python client library for the OpenAI API";
+ homepage = "https://github.com/openai/openai-python";
+ changelog = "https://github.com/openai/openai-python/releases/tag/v${version}";
+ license = licenses.mit;
+ maintainers = with maintainers; [malo];
+ mainProgram = "openai";
+ };
+}