Skip to main content

paper-scoring-connectors

Optional data-source, document, related-work, and assessment-provider adapters for paper-scoring-core. The package contains no credentials, reads no .env files, and performs no work at import time. Applications inject configuration when they create an adapter.

Installation

Install only the integrations that an application needs:

python -m pip install "paper-scoring-connectors[arxiv,pdf,openalex]"
python -m pip install "paper-scoring-connectors[openai]"
python -m pip install "paper-scoring-connectors[ollama]"

openalex intentionally adds no third-party dependency; it uses the Python standard library. all installs every optional SDK. Dependencies between paper-scoring distributions use normal PyPI version constraints and never Git or local filesystem references.

Examples

Search arXiv without exposing SDK objects to the rest of the application:

from datetime import date

from paper_scoring_connectors.arxiv import ArxivSource

documents = ArxivSource().search("cs.AI", date(2026, 1, 15), max_results=10)

Lower-level ArxivClient, QueryBuilder, and download_pdf APIs are available when an application needs control over individual steps. Batch pipelines should call ArxivSource.search_with_failures(...): it isolates each download/extraction failure and returns ArxivBatchResult(successes=..., failures=...). Failures contain only the paper ID, title, and exception type; provider messages are never retained.

Extract a local PDF into the core document contract:

from paper_scoring_connectors.pdf import PdfDocumentLoader

document = PdfDocumentLoader().load("paper.pdf", title="A paper")

Create an assessment adapter with an arbitrary model identifier (there is no model enum):

from paper_scoring_connectors.providers import create_assessment_model

model = create_assessment_model("openai", "your-model-id", api_key="injected-at-runtime")

For Ollama, pass host= and any client options explicitly. SDK defaults may consume process environment variables that the caller injects at runtime; this package never parses .env files.

Supported contract

Version 0.1 targets these paper-scoring-core imports:

from paper_scoring.models import AssessmentRequest, AssessmentResponse, PaperDocument, PageText
from paper_scoring.ports import AssessmentModel, RelatedWorkRetriever
from paper_scoring.rubric import render_assessment_prompt

The core contract is the only mandatory runtime dependency. Each connector is independently importable, and provider SDK imports remain lazy.

Development

python -m pip install -e ".[all,test,security]"
pytest
ruff check .
mypy
bandit -c pyproject.toml -r src
python -m build

All functional tests are offline and use injected fake transports or clients. See docs/report-templates/ for the release evidence templates populated by the release workflow.

Download files

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

Source Distribution

paper_scoring_connectors-0.1.0.tar.gz (130.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

paper_scoring_connectors-0.1.0-py3-none-any.whl (21.8 kB view details)

Uploaded Python 3

File details

Details for the file paper_scoring_connectors-0.1.0.tar.gz.

File metadata

  • Download URL: paper_scoring_connectors-0.1.0.tar.gz
  • Upload date:
  • Size: 130.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for paper_scoring_connectors-0.1.0.tar.gz
Algorithm Hash digest
SHA256 bb338f5145e01e5e7108be5e02596f454f8832aef0bd348d6a9b7d97fd5db866
MD5 18416355c9d3a1a6e3a937fe164447c0
BLAKE2b-256 e25b00722a2ea777b1d612e44d4981b0c41c36d7ff3b84bf411d5c345f114d41

See more details on using hashes here.

File details

Details for the file paper_scoring_connectors-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for paper_scoring_connectors-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7f6ea8d6096da5040c677df77698931a1f7a2f6dde1441b949f27c8b320f41de
MD5 cf0feca90b9f0af38fb442b4b0e8959d
BLAKE2b-256 2ae36af70f3e3954f39589caf7fb6b8007c6372c7200f67eda269ca825dda078

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page