Client to interact with the Pythia API
Project description
pythia-client
This is the client make it easier to interact with our internal Pythia API.
This is still a work in progress
Usage
- Create a connection with client object
from pythia_client.client import APIClient
client = APIClient(url="http://localhost:8000", api_key="api-key")
- Query the knowledge base (ask a question)
filters = {
"operator": "AND",
"conditions": [
{
"field": "meta.source",
"operator": "==",
"value": "Salesforce",
},
],
}
query_response = client.query("Hey how are you", filters=filters)
query_response.model_dump()
- Index new files in the knowledge base
index_response = client.upload_files(["path/to/file.pdf"], meta=[{"source": "Salesforce"}], indexing_mode="unstructured")
index_response.model_dump()
# OR
index_response = client.upload_files([("file.pdf", file)], meta=[{"source": "Salesforce"}], indexing_mode="unstructured")
index_response.model_dump()
- List documents in the knowledge base (based on filters)
filters = {
"operator": "AND",
"conditions": [
{
"field": "meta.source",
"operator": "==",
"value": "Salesforce",
},
],
}
list_response = client.get_docs_by_filters(filters=filters)
list_response.model_dump()
- Remove documents from the knowledge base
filters = {
"operator": "AND",
"conditions": [
{
"field": "meta.source",
"operator": "==",
"value": "Salesforce",
},
],
}
remove_response = client.delete_docs_by_filters(filters=filters)
remove_response.model_dump()
- Get a presigned S3 url to the original document
get_doc_response = client.get_file_url("s3fd_sample.pdf", page=2)
s3_url = get_doc_response.url
- Extract JSON data from unstructured test.
Currently used to showcase the Email2Case feature.
extract_response = client.extract_structured_data("Hello I want to modify the delivery date of order FR73681920")
extract_response.model_dump()
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
pythia_client-0.1.8.tar.gz
(271.5 kB
view details)
Built Distribution
File details
Details for the file pythia_client-0.1.8.tar.gz
.
File metadata
- Download URL: pythia_client-0.1.8.tar.gz
- Upload date:
- Size: 271.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.12.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6fb0dbd92bdcd1cbfdcf7255d14a5d45660d34a7ce5b2b2fc0e2d3cacb4d5661 |
|
MD5 | 1e14b9dab06bef6733dd955019d6735b |
|
BLAKE2b-256 | fded7be9117d5f346cf7fdf41f7006c267885bf06ef27ec629820b98edba2e16 |
File details
Details for the file pythia_client-0.1.8-py3-none-any.whl
.
File metadata
- Download URL: pythia_client-0.1.8-py3-none-any.whl
- Upload date:
- Size: 11.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.12.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f1aede4f9f1a66c1008b94ea265643907461d95744a7f1982feabe3bbac889d0 |
|
MD5 | 4aae55f7d6f9756d6d02158c09d7c5e2 |
|
BLAKE2b-256 | 937ddc451e3f1cac1f4dc63ce35612c923b39a8b19638f1db97b36643f524b4a |