My personal project and infrastructure archive
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
nomicon/pkgs/development/python-modules/openai/default.nix

57 lines
1.1 KiB

{ lib
, buildPythonPackage
, fetchFromGitHub
, pythonOlder
# Python dependencies
, openpyxl
, pandas
, pandas-stubs
, requests
, tqdm
, wandb
# Check dependencies
, pytest-mock
, pytestCheckHook
}:
buildPythonPackage rec {
pname = "openai";
version = "0.18.1";
disabled = pythonOlder "3.7.1";
# Use GitHub source since PyPi source does not include tests
src = fetchFromGitHub {
owner = "openai";
repo = "openai-python";
rev = "v${version}";
sha256 = "sha256-ii/w29aRGhuzR6E+kbknsSrVZlOurpy/tTVGeAYKkXo=";
};
propagatedBuildInputs = [
openpyxl
pandas
pandas-stubs
requests
tqdm
wandb
];
pythonImportsCheck = [ "openai" ];
checkInputs = [ pytestCheckHook pytest-mock ];
pytestFlagsArray = [ "openai/tests" ];
OPENAI_API_KEY = "sk-foo";
disabledTestPaths = [
"openai/tests/test_endpoints.py" # requires a real API key
"openai/tests/test_file_cli.py"
];
meta = with lib; {
description = "Python client library for the OpenAI API";
homepage = "https://github.com/openai/openai-python";
license = licenses.mit;
maintainers = [ maintainers.malo ];
};
}