# pnotp > Official Python client for the P¬P platform. One account API key (pnotp_sk_...) > trains models, deploys them as live endpoints, runs inference, and powers > bring-your-own-brain tool-calling agents. PnotP hosts no frontier LLMs — an > agent's brain is your own key (Gemini/DeepSeek/OpenAI-compatible) or a model > you deployed; the one exception is the zero-retention pnotp-compliant brain. MOST COMMON JOB — use PnotP as a drop-in, zero-retention LLM with tool-calling: it speaks the OpenAI Chat Completions API at POST /v1/chat/completions, so the OpenAI SDK, the Vercel AI SDK, and LangChain work UNCHANGED. Point the base URL at https://api.pnotp.ai/v1, model 'pnotp-compliant', and pass your pnotp_sk_ key as the bearer token. Full recipe: /compliant-llm. Prompt + completion are never stored or logged; it is FREE today (metering is off). These docs are agent-first. Every URL returns markdown to curl/fetchers and a rendered page to browsers. Grab everything at once with /llms-full.txt. - curl https://docs.pnotp.ai -> overview, as markdown - curl https://docs.pnotp.ai/ -> any topic below - curl https://docs.pnotp.ai/llms-full.txt -> every page concatenated - curl https://docs.pnotp.ai/ask -H 'Authorization: Bearer pnotp_sk_...' -d '{"question":"..."}' ## Docs - [pnotp docs](https://docs.pnotp.ai/): Agent-facing documentation for the P¬P platform. curl this URL for markdown; a browser gets the rendered page. - [Thinking of migrating?](https://docs.pnotp.ai/migrating): The honest case for moving your LLM calls to P¬P — zero-retention at P¬P, OpenAI-compatible, at cost, native multimodal. A side-by-side comparison vs OpenAI, DeepSeek, Cerebras, OpenRouter, Hugging Face and the GPU markets. - [Quickstart](https://docs.pnotp.ai/quickstart): Train a model, deploy it as a live endpoint, and run inference — end to end. - [LLM API (OpenAI-compatible)](https://docs.pnotp.ai/compliant-llm): Zero-retention LLM with function/tool calling. Drop-in for the OpenAI SDK / Vercel AI SDK / LangChain via POST /v1/chat/completions. Prompt + completion never stored by P¬P; every call signed with the operator's name. Billed per token. - [Authentication](https://docs.pnotp.ai/auth): One account API key (pnotp_sk_...) authenticates the whole platform — management and inference. - [Training jobs](https://docs.pnotp.ai/training): Submit a run, wait to terminal, and pause / resume / cancel live. - [Deployments](https://docs.pnotp.ai/deployments): Deploy a checkpoint as a live endpoint; manage stats, lifecycle, and per-deployment keys. - [Running inference](https://docs.pnotp.ai/inference): Call a deployment with your account key or an external pnp_ key; image, tabular, or bytes. - [Data-compliant inference](https://docs.pnotp.ai/compliance): compliant=True makes an endpoint zero-retention — inputs never persisted, monitoring redacted, audit receipt on every call. - [Agents](https://docs.pnotp.ai/agents): A bring-your-own-brain tool-calling loop — bounded, observable, streamable. - [Brains / model endpoints](https://docs.pnotp.ai/brains): The model= you pass to pnotp.Agent — Gemini, DeepSeek, OpenAI-compatible, or your own deployment. - [Declaring tools](https://docs.pnotp.ai/tools): A tool is a typed Python function — its JSON Schema is derived from the signature, type hints, and docstring. - [Architecture graphs](https://docs.pnotp.ai/architectures): px.models.create(architecture=...) takes a visual graph — helpers for image and tabular, or a hand-built dict. - [Credits & API keys](https://docs.pnotp.ai/credits): Check your balance and manage the account keys that authenticate the SDK. - [Errors](https://docs.pnotp.ai/errors): Every exception subclasses pnotp.PnotpError and carries a .help pointer. - [Toby — the hosted assistant](https://docs.pnotp.ai/toby): Ask in plain English from Python (pnotp.help.toby) or over HTTP (POST /ask). Authenticated by your account key. - [HTTP API](https://docs.pnotp.ai/api): The raw REST API behind the SDK — base URL, auth headers, and the key routes. ## Optional - [Ask Toby](https://docs.pnotp.ai/ask): POST {"question":"..."} with Authorization: Bearer pnotp_sk_... — natural-language answers (needs credits).