Skip to main content

API for interacting with paperqa.app

Project description

paperqa-api

Python client for interacting with paperqa app

Usage

Make sure to set the environment variable PQA_API_TOKEN or PQA_API_KEY to your API token.

export PQA_API_TOKEN=pqa-...

To query agent:

import pqapi
response = pqapi.agent_query(
    "Are COVID-19 vaccines effective?"
)

to query with a specific bibliography (collection of papers)

import pqapi
response = pqapi.agent_query(
    "Are COVID-19 vaccines effective?",
    "covid"
)

Templates

You can use templates to batch multiple queries together. A minimal example would be:

The effectiveness of COVID-19 is given below:
{{ "Are COVID-19 vaccines effective?" | pqa}}

Or, more complex examples can use shared bibliographies set by variables names:

{% with bib = "covid" %}
## Info
{{ "Are COVID-19 vaccines effective?" | pqa(bib)}}

## Modality
{{ "Has there been an AAV COVID-19 vaccine?" | pqa(bib)}}
{% endwith %}

You render it via:

pqa-render template.jinja > output.md

Managing bibliographies

To get information about a specific bibliography

import pqapi
response = pqapi.get_bibliography(
    "default"
)
print(response)

You do not need to explicitly create a bibliography, just adding files will create one. To upload files:

import pqapi
files = open("paper.pdf", "rb")
metadata =
    pqapi.UploadMetadata(filename="paper.pdf", citation="Test Citation")

response = pqapi.upload_file(
    "default",
    file
    metadata
)

To delete a bibliography:

import pqapi
response = pqapi.delete_bibliography(
    "default"
)

Development

You can change the server URL endpoint to a local PQA server with

export PQA_URL="http://localhost:8080"

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pqapi-6.7.0.tar.gz (1.5 MB view details)

Uploaded Source

Built Distribution

pqapi-6.7.0-py3-none-any.whl (9.4 kB view details)

Uploaded Python 3

File details

Details for the file pqapi-6.7.0.tar.gz.

File metadata

  • Download URL: pqapi-6.7.0.tar.gz
  • Upload date:
  • Size: 1.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.6

File hashes

Hashes for pqapi-6.7.0.tar.gz
Algorithm Hash digest
SHA256 fd929f79b1abbfb533215366d17f2b0898c2f790ccd2bc51d32fae4273d6e66c
MD5 c9d53e6883d1a63511b2c7b98d3638ee
BLAKE2b-256 3148c2253783e200cfe82371dc41de5ef357cdd581a315edcd0fa84d61ab98da

See more details on using hashes here.

File details

Details for the file pqapi-6.7.0-py3-none-any.whl.

File metadata

  • Download URL: pqapi-6.7.0-py3-none-any.whl
  • Upload date:
  • Size: 9.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.6

File hashes

Hashes for pqapi-6.7.0-py3-none-any.whl
Algorithm Hash digest
SHA256 88330d5da6600526dcbf9cfa91cc995bc94052b822355cb7964ea65f6ee7bef7
MD5 ded35a1a678f8a4642012fa23cd9d046
BLAKE2b-256 ea72796aafd471f14f6d976a55e1a196152403f584d867c3542c6189b789d78e

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page