PDF.chat API

chat पासून आपल्या स्वतःच्या अनुप्रयोगातून chat पर्यंत डाउनलोड करा - प्रश्न विचारा आणि 100 + भाषांमधून पृष्ठावर वाचा. प्रति पान मोजले, आश्चर्य नाही.

ओळख

PDF.chat API एक लहान REST इंटरफेस आहे. प्रथम तुम्ही POST दस्तऐवज ग्रहण करीता दस्तऐवज आणि दस्तऐवज पाठ्य व प्रति पान विभाजन (पाठ्य, बाउंड बॅकएण्ड, विश्वास) सह काम परत मिळवा. मग तुम्ही POST या कार्याविरुद्ध प्रश्न आणि दस्तऐवजातील उत्तरे मिळवा, प्रत्येक पान हे आलेले पान उद्धृत करते.5पान किंवा कमीचे कार्य इनलाइन परत येते; मोठे कार्य त्वरित एकसह परत येते pending तुम्ही पोलपर्यंत स्थिती done.

  • आधार URL: https://pdf.chat
  • दस्तऐवज: PDF, वर्ड, पॉईंट अँड शूट, पाठ्य व प्रतिमा (PNG, JPG, WEBP, GIF, BMP, TIFF)
  • Chat out: पान उद्धरण सह उत्तरे; इतिहास अंतबिंदू द्वारे प्रत
  • प्रोसेस्ड पाठ्य आऊट: txt, md, docx, pdf, csv, json
  • वाचन इंजिन: cpu (जलद, छापलेले दस्तऐवज) व vlm (प्रीमियम AI, हस्तलिखित, जटिल रचना, गणित)

अधिप्रमाणन

तुमच्याशी अधिप्रमाणन करा API टोकन (आपल्या संगणकावर शोधा) खाते पान) वाहक हेडर म्हणून:

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"

कार्य परत करतो. ≤5पान फाइल करीता हे आधिपासूनच आहे 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

दस्तऐवजासह Chat

पूर्ण झालेले कार्य विषयी प्रश्न विचारा. उत्तरे फक्त काढून टाकलेले पाठ्य व स्त्रोत पान पासूनच आहेत. ॲकाऊंट टोकनची आवश्यकता आहे, 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?"}'

पैरामीटर

क्षेत्रप्रकारवर्णन@ title: window
filefileआवश्यक. प्रक्रिया करीता प्रतिमा किंवा PDF.
tierstringcpu (मासिक, जलद/मुद्रित) किंवा vlm (मराठी मजकूर) (मराठी मजकूर) (मराठी मजकूर)
languagestringauto (मूलभूत) किंवा भाषा कोड (en, ch, ja, ar,...
toolstringॲडव्होकेट जनरल ऑफ इंडिया (इ. summarize-pdf, ask-pdfchat कोटी रुपयांची तरतूद करण्यात आली आहे.

त्रुटी व मर्यादा

कोडअर्थ
400फाइल नाही, असमर्थीत प्रकार किंवा फाइल खूप मोठे आहे.
401आढळले नाही किंवा अवैध API टोकन.
402पान बाहेर, दैनिक/मासिक मोफत मर्यादा पोहोचली, किंवा क्रेडिट नाही. मुख्य भाग समाविष्टीत आहे used/cap.
404कार्य UUID आढळले नाही.
409कार्य पूर्ण करण्यापूर्वी डाउनलोड करीता विनंती केली.

प्रत्येक पान प्रक्रिया करण्यास क्रेडिट लागते (1/ पान जलद स्तरावर, अधिक प्रीमियमवर). शुल्क भरलेल्या योजना प्रति फाइल पान कमाल वाढवतात व प्राधान्यता जोडतात. पहा किंमत.

वारंवार विचारले जाणारे प्रश्न

मोफत खाते तयार करा आणि तुमचे खाते उघडा खाते पान, तुमचे टोकन प्रतिकृत बटण सह दर्शविले जाते.

५) नंतरच्या काळात लिंगभावाच्या आधारे होणारे भेदभाव, लैंगिक शोषण, स्त्रियांच्या हक्कांचे उल्लंघन या सर्व गोष्टींमुळे स्त्रियांना त्यांच्या हक्कांचे संरक्षण मिळणे शक्य नाही.

लॅटिन, CJK, अरबी, सिरिलिक व भारतीय स्क्रिप्टसह 100 पेक्षा जास्त. वापरा language=auto शोधण्याकरीता, किंवा विशिष्ट कोड पास करण्यासाठी.

अपलोड केवळ तुमच्या प्रश्नाचे उत्तर देण्याकरीता प्रक्रिया केले जाते व आपोआप नष्ट केले जाते. आम्ही कधीच विकत नाही, सामायिक करत नाही किंवा तुमच्या दस्तऐवजांवर प्रशिक्षण देत नाही.

वापर तुमच्या खात्यामधील बॅलन्स विरुद्ध प्रति पान मोजला जातो: अनधिकृत कॉलला प्रति-IP दैनिक अनुदान मिळते, मोफत खाते महिन्याचे बॅच, आणि मोफत योजना वापरतात खरेदी केलेले क्रेडिट उच्च प्रति-फाइल पान कव्हर आणि प्राधान्यतेसह. जेव्हा तुम्ही बाहेर पडता तेव्हा तुम्हाला वापरलेले आणि शरीरात कव्हरसह 402 मिळते.

PNG, JPG, WEBP, GIF, BMP, TIFF, आणि बहु- पान PDF पाठवू शकता. परिणाम txt, md, docx, pdf (searchable), csv, किंवा json डाउनलोड अंतबिंदू स्वरूप परिमाण द्वारे डाउनलोड करा.

400 ही आढळलेली फाइल, असमर्थीत प्रकार, किंवा फाइल खूप मोठी आहे; 401 एक आढळले नाही किंवा अवैध टोकन; 402 पान बाहेर; 404 एक अपरिचीत कार्य UUID; व 409 कार्य पूर्ण करण्यापूर्वी डाउनलोड विनंती. त्रुटी बाह्यत्वचेत एक लहान संदेश समाविष्टीत आहे.

स्थिती, स्तर, भाषा, पान_संख्या, व mean_confidence सह कार्य वस्तु, पूर्ण पाठ्य व मार्कडाउन सह. पानांची यादी प्रत्येक पानाच्या पाठ्य, बाउंडिंग बॉक्स (bbox) व प्रति-ब्लॉक विश्वासार्हतेसह ब्लॉकमध्ये विभाजित करते.

स्वच्छ छपाई दस्तऐवजाच्या जलद, कमी खर्चाचे ओळखणी करीता cpu चा वापर करा (मूलभूत). vlm चा वापर करा, प्रीमियम AI इंजिन, हस्तलेखन, जटिल किंवा बहु- स्तंभ मांडणी, गणित व अनुवाद करीता, जेथे ते अधिक अचूक आहे.

या योजनेत chat पेक्षा जास्त लोक सहभागी झाले होते, ज्यात chat पेक्षा जास्त लोक सहभागी झाले होते, ज्यात chat पेक्षा जास्त लोक सहभागी झाले होते, ज्यात chat पेक्षा जास्त लोक सहभागी झाले होते, ज्यात chat पेक्षा जास्त लोक सहभागी झाले होते.

POST प्रतिसादात ५ किंवा कमी पानांचे फाइल इनलाइन परत येतात. मोठे फाइल लगेचच परत येतात, अपेक्षित किंवा प्रक्रियेत, आणि तुम्ही GET /api/v1/ocr/ पॉल करा<uuid>/ स्थिती पूर्ण किंवा अपयशी होईपर्यंत. मोफत योजना प्रति- फाइल पान कमाल वाढविते.

API HTTPS वर REST आहे, म्हणून ते HTTP क्लाऐंटसह कोणत्याही भाषेतून काम करते, Python, Node.js, आणि cURL वरील उदाहरणे पहा. स्थापना करण्यासाठी SDK नाही; मानक HTTP कोडच्या काही ओळी तुम्हाला सर्व आवश्यक आहेत.