Skip to content
This repository was archived by the owner on Sep 11, 2025. It is now read-only.

Commit 3865fad

Browse files
committed
Adding support for Parquet export format.
1 parent 60f7c77 commit 3865fad

File tree

7 files changed

+280
-172
lines changed

7 files changed

+280
-172
lines changed

README.md

Lines changed: 19 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,8 @@ pip install rhesis-sdk
2727

2828
Your API key will be in the format `rh-XXXXXXXXXXXXXXXXXXXX`. Keep this key secure and never share it publicly.
2929

30+
> **Note:** On the Rhesis App, you can also create test sets for your own use cases and access them via the SDK. You only need to connect your GitHub account to create a test set.
31+
3032
### 2. Configure the SDK
3133

3234
You can configure the Rhesis SDK either through environment variables or direct configuration:
@@ -58,24 +60,7 @@ The Rhesis SDK currently provides functionality to work with Rhesis test sets th
5860

5961
## Quick Start
6062

61-
You can configure the Rhesis SDK either through environment variables or direct configuration:
62-
63-
### Using Environment Variables
64-
65-
```bash
66-
export RHESIS_API_KEY="your-api-key"
67-
export RHESIS_BASE_URL="https://api.rhesis.ai" # optional
68-
```
69-
70-
### Direct Configuration
71-
72-
```python
73-
import rhesis
74-
75-
# Set configuration directly
76-
rhesis.base_url = "https://api.rhesis.ai" # optional
77-
rhesis.api_key = "rh-XXXXXXXXXXXXXXXXXXXX"
78-
```
63+
Before you start, you can configure the Rhesis SDK either through environment variables or direct configuration, as described above.
7964

8065
### Working with Test Sets
8166

@@ -97,6 +82,12 @@ test_set.download()
9782

9883
For more detailed examples, check out our [example notebooks](examples/).
9984

85+
### Generating custom Test Sets
86+
87+
If none of the existing test sets fit your needs, you can generate your own.
88+
89+
You can check out [app.rhesis.ai](http://app.rhesis.ai). There you can define requirements, scenarios and personas, and even import your existing GitHub repository.
90+
10091
## About Rhesis AI
10192

10293
Rhesis AI helps organizations build Gen AI applications that deliver value, not surprises. Our platform enables you to:
@@ -110,13 +101,21 @@ Made in Potsdam, Germany 🇩🇪
110101

111102
Visit [rhesis.ai](https://rhesis.ai) to learn more about our platform and services.
112103

113-
## Support
104+
## Community 💬
105+
106+
Join our [Discord server](https://discord.rhesis.ai) to connect with other users and developers.
107+
108+
## Hugging Face 🤗
109+
110+
You can also find us on [Hugging Face](https://huggingface.co/rhesis). There, you can find our test sets across multiple use cases.
111+
112+
## Support 🆘
114113

115114
For questions, issues, or feature requests:
116115
- Visit our [documentation](https://docs.rhesis.ai)
117116
- Contact us at support@rhesis.ai
118117
- Create an issue in this repository
119118

120-
## License
119+
## License 📝
121120

122121
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.

poetry.lock

Lines changed: 123 additions & 47 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

pyproject.toml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,8 @@ pytest = "^8.3.4"
3434
sphinx = "^8.1.3"
3535
sphinx-autodoc-typehints = "^3.0.1"
3636
sphinx-rtd-theme = "^3.0.2"
37+
typing-extensions = "^4.12.2"
38+
pyarrow-stubs = {version = ">=17.16", markers = "python_version >= \"3.10\" and python_version < \"4.0\""}
3739

3840
[tool.black]
3941
line-length = 88
@@ -57,6 +59,7 @@ ipykernel = "^6.29.5"
5759
pandas = "^2.2.3"
5860
python-dotenv = "^1.0.1"
5961
requests = "^2.31.0"
62+
pyarrow = ">=17.0.0"
6063

6164
[build-system]
6265
requires = ["poetry-core>=1.0.0"]

requirements-dev.txt

Lines changed: 68 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -1,48 +1,68 @@
1-
appnope==0.1.4 ; python_version <= "3.11" and platform_system == "Darwin" and python_version >= "3.9" or python_version >= "3.12" and platform_system == "Darwin"
2-
asttokens==3.0.0 ; python_version <= "3.11" and python_version >= "3.9" or python_version >= "3.12"
3-
certifi==2024.12.14 ; python_version <= "3.11" and python_version >= "3.9" or python_version >= "3.12"
4-
cffi==1.17.1 ; python_version <= "3.11" and implementation_name == "pypy" and python_version >= "3.9" or python_version >= "3.12" and implementation_name == "pypy"
5-
charset-normalizer==3.4.1 ; python_version <= "3.11" and python_version >= "3.9" or python_version >= "3.12"
6-
colorama==0.4.6 ; python_version <= "3.11" and sys_platform == "win32" and python_version >= "3.9" or python_version >= "3.12" and sys_platform == "win32"
7-
comm==0.2.2 ; python_version <= "3.11" and python_version >= "3.9" or python_version >= "3.12"
8-
debugpy==1.8.12 ; python_version <= "3.11" and python_version >= "3.9" or python_version >= "3.12"
9-
decorator==5.1.1 ; python_version <= "3.11" and python_version >= "3.9" or python_version >= "3.12"
10-
exceptiongroup==1.2.2 ; python_version >= "3.9" and python_version < "3.11"
11-
executing==2.1.0 ; python_version <= "3.11" and python_version >= "3.9" or python_version >= "3.12"
12-
idna==3.10 ; python_version <= "3.11" and python_version >= "3.9" or python_version >= "3.12"
13-
importlib-metadata==8.5.0 ; python_version >= "3.9" and python_version < "3.10"
14-
iniconfig==2.0.0 ; python_version <= "3.11" and python_version >= "3.9" or python_version >= "3.12"
15-
ipykernel==6.29.5 ; python_version <= "3.11" and python_version >= "3.9" or python_version >= "3.12"
16-
ipython==8.18.1 ; python_version <= "3.11" and python_version >= "3.9" or python_version >= "3.12"
17-
jedi==0.19.2 ; python_version <= "3.11" and python_version >= "3.9" or python_version >= "3.12"
18-
jupyter-client==8.6.3 ; python_version <= "3.11" and python_version >= "3.9" or python_version >= "3.12"
19-
jupyter-core==5.7.2 ; python_version <= "3.11" and python_version >= "3.9" or python_version >= "3.12"
20-
matplotlib-inline==0.1.7 ; python_version <= "3.11" and python_version >= "3.9" or python_version >= "3.12"
21-
nest-asyncio==1.6.0 ; python_version <= "3.11" and python_version >= "3.9" or python_version >= "3.12"
22-
packaging==24.2 ; python_version <= "3.11" and python_version >= "3.9" or python_version >= "3.12"
23-
parso==0.8.4 ; python_version <= "3.11" and python_version >= "3.9" or python_version >= "3.12"
24-
pexpect==4.9.0 ; python_version <= "3.11" and sys_platform != "win32" and python_version >= "3.9" or python_version >= "3.12" and sys_platform != "win32"
25-
platformdirs==4.3.6 ; python_version <= "3.11" and python_version >= "3.9" or python_version >= "3.12"
26-
pluggy==1.5.0 ; python_version <= "3.11" and python_version >= "3.9" or python_version >= "3.12"
27-
prompt-toolkit==3.0.48 ; python_version <= "3.11" and python_version >= "3.9" or python_version >= "3.12"
28-
psutil==6.1.1 ; python_version <= "3.11" and python_version >= "3.9" or python_version >= "3.12"
29-
ptyprocess==0.7.0 ; python_version <= "3.11" and sys_platform != "win32" and python_version >= "3.9" or python_version >= "3.12" and sys_platform != "win32"
30-
pure-eval==0.2.3 ; python_version <= "3.11" and python_version >= "3.9" or python_version >= "3.12"
31-
pycparser==2.22 ; python_version <= "3.11" and implementation_name == "pypy" and python_version >= "3.9" or python_version >= "3.12" and implementation_name == "pypy"
32-
pygments==2.19.1 ; python_version <= "3.11" and python_version >= "3.9" or python_version >= "3.12"
33-
pytest==8.3.4 ; python_version <= "3.11" and python_version >= "3.9" or python_version >= "3.12"
34-
python-dateutil==2.9.0.post0 ; python_version <= "3.11" and python_version >= "3.9" or python_version >= "3.12"
35-
python-dotenv==1.0.1 ; python_version <= "3.11" and python_version >= "3.9" or python_version >= "3.12"
36-
pywin32==308 ; python_version <= "3.11" and sys_platform == "win32" and platform_python_implementation != "PyPy" and python_version >= "3.9" or python_version >= "3.12" and sys_platform == "win32" and platform_python_implementation != "PyPy"
37-
pyzmq==26.2.0 ; python_version <= "3.11" and python_version >= "3.9" or python_version >= "3.12"
38-
requests==2.32.3 ; python_version <= "3.11" and python_version >= "3.9" or python_version >= "3.12"
39-
six==1.17.0 ; python_version <= "3.11" and python_version >= "3.9" or python_version >= "3.12"
40-
stack-data==0.6.3 ; python_version <= "3.11" and python_version >= "3.9" or python_version >= "3.12"
41-
tomli==2.2.1 ; python_version >= "3.9" and python_version < "3.11"
42-
tornado==6.4.2 ; python_version <= "3.11" and python_version >= "3.9" or python_version >= "3.12"
43-
traitlets==5.14.3 ; python_version <= "3.11" and python_version >= "3.9" or python_version >= "3.12"
44-
types-requests==2.32.0.20241016 ; python_version <= "3.11" and python_version >= "3.9" or python_version >= "3.12"
45-
typing-extensions==4.12.2 ; python_version >= "3.9" and python_version < "3.10"
46-
urllib3==2.3.0 ; python_version <= "3.11" and python_version >= "3.9" or python_version >= "3.12"
47-
wcwidth==0.2.13 ; python_version <= "3.11" and python_version >= "3.9" or python_version >= "3.12"
48-
zipp==3.21.0 ; python_version >= "3.9" and python_version < "3.10"
1+
alabaster==1.0.0 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
2+
appnope==0.1.4 ; python_version <= "3.11" and platform_system == "Darwin" and python_version >= "3.10" or python_version >= "3.12" and platform_system == "Darwin"
3+
asttokens==3.0.0 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
4+
babel==2.16.0 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
5+
certifi==2024.12.14 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
6+
cffi==1.17.1 ; python_version <= "3.11" and implementation_name == "pypy" and python_version >= "3.10" or python_version >= "3.12" and implementation_name == "pypy"
7+
charset-normalizer==3.4.1 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
8+
colorama==0.4.6 ; python_version <= "3.11" and sys_platform == "win32" and python_version >= "3.10" or python_version >= "3.12" and sys_platform == "win32"
9+
comm==0.2.2 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
10+
debugpy==1.8.12 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
11+
decorator==5.1.1 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
12+
docutils==0.21.2 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
13+
exceptiongroup==1.2.2 ; python_version >= "3.10" and python_version < "3.11"
14+
executing==2.1.0 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
15+
idna==3.10 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
16+
imagesize==1.4.1 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
17+
iniconfig==2.0.0 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
18+
ipykernel==6.29.5 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
19+
ipython==8.18.1 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
20+
jedi==0.19.2 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
21+
jinja2==3.1.5 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
22+
jupyter-client==8.6.3 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
23+
jupyter-core==5.7.2 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
24+
markupsafe==3.0.2 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
25+
matplotlib-inline==0.1.7 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
26+
nest-asyncio==1.6.0 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
27+
numpy==1.26.4 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
28+
packaging==24.2 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
29+
pandas-stubs==2.2.2.240807 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
30+
parso==0.8.4 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
31+
pexpect==4.9.0 ; python_version <= "3.11" and sys_platform != "win32" and python_version >= "3.10" or python_version >= "3.12" and sys_platform != "win32"
32+
platformdirs==4.3.6 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
33+
pluggy==1.5.0 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
34+
prompt-toolkit==3.0.48 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
35+
psutil==6.1.1 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
36+
ptyprocess==0.7.0 ; python_version <= "3.11" and sys_platform != "win32" and python_version >= "3.10" or python_version >= "3.12" and sys_platform != "win32"
37+
pure-eval==0.2.3 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
38+
pyarrow-stubs==17.16 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12" and python_version < "4.0"
39+
pyarrow==19.0.0 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
40+
pycparser==2.22 ; python_version <= "3.11" and implementation_name == "pypy" and python_version >= "3.10" or python_version >= "3.12" and implementation_name == "pypy"
41+
pygments==2.19.1 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
42+
pytest==8.3.4 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
43+
python-dateutil==2.9.0.post0 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
44+
python-dotenv==1.0.1 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
45+
pywin32==308 ; python_version <= "3.11" and sys_platform == "win32" and platform_python_implementation != "PyPy" and python_version >= "3.10" or python_version >= "3.12" and sys_platform == "win32" and platform_python_implementation != "PyPy"
46+
pyzmq==26.2.0 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
47+
requests==2.32.3 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
48+
six==1.17.0 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
49+
snowballstemmer==2.2.0 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
50+
sphinx-autodoc-typehints==3.0.1 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
51+
sphinx-rtd-theme==3.0.2 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
52+
sphinx==8.1.3 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
53+
sphinxcontrib-applehelp==2.0.0 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
54+
sphinxcontrib-devhelp==2.0.0 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
55+
sphinxcontrib-htmlhelp==2.1.0 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
56+
sphinxcontrib-jquery==4.1 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
57+
sphinxcontrib-jsmath==1.0.1 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
58+
sphinxcontrib-qthelp==2.0.0 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
59+
sphinxcontrib-serializinghtml==2.0.0 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
60+
stack-data==0.6.3 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
61+
tomli==2.2.1 ; python_version >= "3.10" and python_version < "3.11"
62+
tornado==6.4.2 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
63+
traitlets==5.14.3 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
64+
types-pytz==2024.2.0.20241221 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
65+
types-requests==2.32.0.20241016 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
66+
typing-extensions==4.12.2 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
67+
urllib3==2.3.0 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"
68+
wcwidth==0.2.13 ; python_version <= "3.11" and python_version >= "3.10" or python_version >= "3.12"

0 commit comments

Comments
 (0)