PDF.chat एपीआई

एक एचटीटीपी निवेदन एक छवि या पीडीएफ को साफ पाठ में बदल देता है, मरकुस, तालिका, और JSON, १००+ भाषाओं में. मीटर प्रति पृष्ठ पर, कोई आश्चर्य नहीं है.

ओवरव्यू

PDF.chat एपीआई एक छोटा सा प्रक्षेपक इंटरफेस है. पहले आप POST दस्तावेज़ के पाठ और प्रति- पृष्ठ- पृष्ठ- अप ब्रेक ब्रेक (पाठ, बक्स, भरोसा) के साथ एक दस्तावेज़ प्राप्त करने के लिए दस्तावेज़. POST उस कार्य के विरुद्ध प्रश्‍न और दस्तावेज़ में आधार पर जवाब पाने के लिए, हर पन्‍ने से वह शब्द आया । pending स्थिति कि आप खर्च जब तक done.

  • आधार यूआरएल: https://pdf.chat
  • दस्तावेज़ में: पीडीएफ, प्लस वर्ड, पावरपाइंट, पाठ, और छवियों (PPG, JPG, JPG, WF, जीबी, lF, रेड, टिफ)
  • Chat बाहर: पृष्ठ उद्धरण के साथ जवाब; इतिहास अंत- बिन्दु के द्वारा उद्धरण
  • प्रोसेस्ड पाठ बाहर: txt, md, docx, pdf, csv, json
  • इंजन पढ़ा जा रहा है: cpu (तेज, मुद्रित डॉट्स) और vlm (प्रेनियम एआई, हस्तलिपि, जटिल ख़ाका, गणित)

सत्यापन

अपने साथ सत्यापित करें एपीआई टोकन (यह आप पर डाल खाता पृष्ठएक भालू हेडर के रूप में:

Authorization: Bearer YOUR_API_TOKEN

आप भी पार कर सकते हैं ?api_token=… एक क्वैरी पैरामीटर के रूप में. उपयोग को आपके खाता के पृष्ठ के अनुरूप मीटर ऊँचा किया गया है.

दस्तावेज जमा करें

POST /api/v1/ocr/, बहु- पार्ट फ़ॉर्म अपलोड.

curl -X POST https://pdf.chat/api/v1/ocr/ \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -F "file=@invoice.pdf" \
  -F "tier=vlm" \
  -F "language=auto"

कार्य लौटाता है. GEST5-पेज फाइलों के लिए यह पहले से ही है done पाठ के साथ; बड़ी फ़ाइलें वापस आई हैं pending/processing, स्थिति अंत बिन्दु को सर्वे करें.

{
  "uuid": "9f2c1b7e4a...",
  "status": "done",
  "tier": "vlm",
  "language": "auto",
  "page_count": 1,
  "mean_confidence": 0.98,
  "text": "INVOICE\nAcme Corp\nTotal: 215.00 USD",
  "markdown": "# INVOICE\n\n**Acme Corp** ...",
  "pages": [ { "index": 0, "text": "...", "blocks": [ { "text": "...", "bbox": [x0,y0,x1,y1], "confidence": 0.98 } ] } ]
}

परिणाम प्राप्त करें

GET /api/v1/ocr/<uuid>/, तब तक सर्वे status है done या failed.

curl https://pdf.chat/api/v1/ocr/9f2c1b7e4a.../ \
  -H "Authorization: Bearer YOUR_API_TOKEN"

फ़ॉर्मेट डाउनलोड करें

GET /api/v1/ocr/<uuid>/download/?format=md, परिणाम निर्यात करें. format एक का txt, md, docx, pdf, csv, json.

curl -L "https://pdf.chat/api/v1/ocr/9f2c1b7e4a.../download/?format=docx" \
  -H "Authorization: Bearer YOUR_API_TOKEN" -o result.docx

दस्तावेज़ के साथ Chat00

एक पूर्ण कार्य के बारे में प्रश्न पूछें. उत्तर केवल निकाले गए पाठ में हैं तथा स्रोत पृष्ठ का उल्लेख करें. एक खाता टोकन की जरूरत है, chat फीचर खाता तैयार किया जाता है.

POST /api/v1/chat/<uuid>/, JSON शरीर {"message": "your question"}.

curl -X POST https://pdf.chat/api/v1/chat/9f2c1b7e4a.../ \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"message": "What is the invoice total and due date?"}'

सहायक संदेश को इसके उत्तर से बताता है तथा उद्धृत पृष्ठों की सूची में बताता है:

{"conversation": "a1b2…", "message": {
   "role": "assistant",
   "content": "The total is $42, due on March 3 (p. 1).",
   "citations": [{"page": 1, "cited_text": "The invoice total is $42…", "document_id": "9f2c1b7e4a…"}]
}}

GET /api/v1/chat/<uuid>/history/, एक नौकरी के लिए पूरा बातचीत की पेशकश लाना.

कोड उदाहरण

import requests, time

BASE = "https://pdf.chat/api/v1"
H = {"Authorization": "Bearer YOUR_API_TOKEN"}

# 1. Upload a PDF
with open("contract.pdf", "rb") as f:
    job = requests.post(BASE + "/ocr/", headers=H, files={"file": f}).json()

# 2. Wait until it's ready to chat
while job["status"] in ("pending", "processing"):
    time.sleep(2)
    job = requests.get(f"{BASE}/ocr/{job['uuid']}/", headers=H).json()

# 3. Ask questions — every answer is cited to the page
ans = requests.post(f"{BASE}/chat/{job['uuid']}/", headers=H,
    json={"message": "What is the termination notice period?"}).json()
print(ans["message"]["content"])
print(ans["message"]["citations"])
import fs from "fs";

const BASE = "https://pdf.chat/api/v1";
const H = { Authorization: "Bearer YOUR_API_TOKEN" };

// 1. Upload a PDF
const form = new FormData();
form.append("file", new Blob([fs.readFileSync("contract.pdf")]), "contract.pdf");
let job = await (await fetch(`${BASE}/ocr/`, { method: "POST", headers: H, body: form })).json();

// 2. Wait until it's ready to chat
while (["pending", "processing"].includes(job.status)) {
  await new Promise(r => setTimeout(r, 2000));
  job = await (await fetch(`${BASE}/ocr/${job.uuid}/`, { headers: H })).json();
}

// 3. Ask questions — every answer is cited to the page
const ans = await (await fetch(`${BASE}/chat/${job.uuid}/`, {
  method: "POST", headers: { ...H, "Content-Type": "application/json" },
  body: JSON.stringify({ message: "What is the termination notice period?" })
})).json();
console.log(ans.message.content, ans.message.citations);
# 1. Upload a PDF
curl -X POST https://pdf.chat/api/v1/ocr/ \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -F "file=@contract.pdf"

# 2. Ask questions (use the uuid from step 1) — answers cited to the page
curl -X POST https://pdf.chat/api/v1/chat/UUID/ \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"message": "What is the termination notice period?"}'

पैरामीटर्स

क्षेत्रक़िस्मवर्णन
filefileआवश्यक है. प्रक्रिया के लिए छवि या पीडीएफ.
tierstringcpu (डिफ़ॉल्ट, तीव्र/ प्रिंट्ड) vlm (प्रेनियम एआई: अक्षर, ख़ाका, गणित.
languagestringauto (डिफ़ॉल्ट) या कोई भाषा कोड (डिफ़ॉल्ट)en, ch, ja, ar.
toolstringवैकल्पिक औज़ार स. (उदा. summarize-pdf, ask-pdf() उस कार्य के लिए chat बजे पहले।

त्रुटियाँ (u)

कोडचेतावनी
400कोई फ़ाइल नहीं, असमर्थित प्रकार, या फ़ाइल बहुत बड़ा नहीं है.
401अनुपस्थित या अवैध एपीआई टोकन
402पृष्ठ के बाहर, दैनिक/माफ़िक स्वतंत्र सीमा पहुँच गई, या कोई श्रेय नहीं गया. used/cap.
404कार्य यूएसएसएफ नहीं मिला.
409कार्य पूरा होने से पहले डाउनलोड करें.

प्रत्येक पृष्ठ के खर्चों का श्रेय (1/पेज जो तेज टाई पर है, अधिक से अधिक हैमियम पर. Pid योजना प्रति- फ़ाइल पृष्ठ रीफ्रेशंश और जोड़ने पर निर्भर करता है. स्केलिंग.

बार बार पूछे जाने वाले प्रश्न

एक मुफ्त खाता बनाएँ तथा अपना नाम खोलें खाता पृष्ठ, आपका टोकन प्रति बटन के साथ वहाँ दिखाया गया है.

जी हाँ, 5 पेज की फ़ाइलें या कम परिणाम इन्हें पोथी जवाब में इनलाइन रूप से वापस लौटते हैं, इसलिए अधिकतर छवियों और लघु छविओं के लिए कोई भी सर्वे की ज़रूरत नहीं है ।

100 से ज़्यादा, जिनमें लातिन, सीके, अरबी, चिपकाएँ और इंडिक्टिक स्क्रिप्ट शामिल हैं । language=auto पता लगाने के लिए या किसी विशिष्ट कोड को पास करने के लिए.

हम कभी - भी अपने दस्तावेज़ों पर कभी - भी हिस्सा नहीं लेते, न ही उन्हें अपने साथ ले जाते हैं ।

उपयोग प्रति पृष्ठ आपके खाते के संतुलन के विरुद्ध मीटर लंबा है: अज्ञात कॉल प्रति दिन प्रति दिन एक शाम(ARY), मुफ्त खाता के लिए एक मासिक पोस्ट, और भुगतान योजना का प्रयोग प्रति माह प्रति फ़ाइल पृष्ठ रीप्लेश व प्राथमिकता के साथ करें. जब आप बाहर निकलें आप 402 प्राप्त करें और शरीर में टोपी के साथ उपयोग किया जाता है.

आप पीएनजी, जेपीपी, जीबीपी, बीएमपी, टीजीएफ़, और बहु- पृष्ठ पीडीएफ भेज सकते हैं. परिणाम जैसे ही क्षमा, mdx, csv (दोनों), csv, या जेएसएफ.

400 एक गुम फ़ाइल है, असमर्थित प्रकार या फ़ाइल बहुत बड़ा; 401 एक गुम या अवैध टोकन; 402 का एक अज्ञात कार्य है; कार्य पूरा होने से पहले 409 डाउनलोड करें. त्रुटि शरीर में छोटी कमी है.

स्थिति, अक्षर, भाषा, पृष्ठ_C_S_SIG_SIG_SICT, तथा पूर्ण पाठ तथा निशान नीचे. पृष्ठ क्रमांक एक पृष्ठ है जो अपने पाठ के साथ ब्लॉक में हर पृष्ठ विभाजित है, बॉक्स (b- बाक्स), और प्रति ब्लॉक भरोसा.

तीव्र, साफ छपाई दस्तावेज़ों की कम कीमत (डिप्रेशन) का प्रयोग करें. वी. एल. इंजिन, टममम इंजिन, जो कि कोड, जटिल या बहु- स्तम्भ खाका, गणित, गणित और अनुवाद के लिए इस्तेमाल करें जहाँ यह अब तक सही है.

एक ug (उदाहरण के लिए उदाहरण के लिए या pdf-pdf का परिचय करें) इस कार्य के लिए chat निर्धारित करने के लिए पास के उपकरण, तो सहायक दस्तावेज़ के बारे में चर्चा करने या सवालों के जवाब देने के लिए उपयोग में आ गया है.

5 पृष्ठों की फ़ाइलें या कम रिटर्न इनफ्टी जवाब में इनलाइन. बड़ी फ़ाइलें तुरंत वापस आती हैं जैसे कि स्थगित या प्रक्रिया, और आप पाते हैं // appp1/i1/iable/<uuid>/ जब तक स्थिति पूरी नहीं हो जाती या असफल हो जाती है. Pideid योजना प्रति- फ़ाइल पृष्ठ कैप को उठाती है.

एपीआई HTTP क्लाएंट के साथ किसी भी भाषा से काम करता है, पायथन, नोड और www. reallse.org को स्थापित करने के लिए कोई S के पास नहीं है; मानक एचटीटीपी कोड की कुछ लाइनों आप सभी की जरूरत है.