Chat with PDF
Open Chat with PDF on Happytails.ai. This view has the same page content and links, with explicit tool capabilities. Read the processing notes before using a tool.
Tool capabilities
{
"id": "chat-with-document",
"category": "document-tools",
"built": true,
"requirements": "Answer questions over an uploaded document with quoted passages and page links; show insufficient-evidence responses; delete session index on request; resist instructions embedded in documents.",
"implementation": {
"fields": [
{
"key": "question",
"label": "Your question",
"type": "text",
"value": ""
}
],
"files": true,
"accept": ".pdf,.docx,.txt",
"multiple": false,
"input": false,
"processing": "Server required",
"native": true,
"ai": true,
"maxFileBytes": 20971520,
"note": "Runs with local model weights on this website’s server. No external AI API is used. Review the result for errors. Answers from one uploaded document per request. No persistent index or chat history is stored. Source limited to 16,000 characters.",
"experience": {
"automatic": false,
"single": false,
"inputMaxLength": 1000000,
"inputMode": "text",
"label": "Your text",
"placeholder": "Type or paste your input…",
"help": "Up to 1,000,000 characters. Review the settings before running.",
"helpParts": [
"Up to 1,000,000 characters.",
"Review the settings before running."
],
"action": null
},
"mode": "explicit",
"interactive": false
},
"execution": "POST /api/v1/tools/chat-with-document/run",
"api": {
"id": "chat-with-document",
"name": "Chat with document",
"category": "document-tools",
"description": "Ask a question about the text in a document.",
"notes": "Runs with local model weights on this website’s server. No external AI API is used. Review the result for errors. Answers from one uploaded document per request. No persistent index or chat history is stored. Source limited to 16,000 characters.",
"human_path": "/en/document-tools/chat-with-document/",
"method": "POST",
"endpoint": "/api/v1/tools/chat-with-document/run",
"schema_url": "/api/v1/tools/chat-with-document",
"input_schema": {
"type": "object",
"additionalProperties": false,
"properties": {
"input": {
"type": "string",
"maxLength": 1000000,
"default": "",
"description": "Plain text input. File tools use files instead unless otherwise documented."
},
"options": {
"type": "object",
"additionalProperties": false,
"properties": {
"question": {
"type": "string",
"description": "Your question",
"default": ""
}
}
},
"files": {
"type": "array",
"maxItems": 1,
"items": {
"type": "object",
"required": [
"name",
"base64"
],
"additionalProperties": false,
"properties": {
"name": {
"type": "string",
"maxLength": 200,
"description": "Filename only, no path."
},
"mime": {
"type": "string",
"maxLength": 150
},
"bytes": {
"type": "integer",
"minimum": 0,
"description": "Optional decoded byte count; must match content if supplied."
},
"base64": {
"type": "string",
"contentEncoding": "base64",
"description": "File bytes as padded base64. Use the tool-specific limits.files_bytes value for the total decoded input size."
}
}
}
}
}
},
"output_schema": {
"type": "object",
"required": [
"tool",
"result"
],
"properties": {
"tool": {
"type": "string"
},
"result": {
"type": "object",
"required": [
"text",
"files"
],
"properties": {
"text": {
"type": [
"string",
"null"
]
},
"data": {
"description": "Parsed JSON when the textual result is JSON."
},
"name": {
"type": "string"
},
"mime": {
"type": "string"
},
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"name",
"mime",
"bytes",
"base64"
],
"properties": {
"name": {
"type": "string"
},
"mime": {
"type": "string"
},
"bytes": {
"type": "integer"
},
"base64": {
"type": "string",
"contentEncoding": "base64"
}
}
}
}
}
}
}
},
"processing": "Server; self-hosted native engine, no external conversion service",
"limits": {
"request_bytes": 31457280,
"input_characters": 1000000,
"files_bytes": 20971520,
"max_files": 1,
"timeout_seconds": 90
}
},
"agent_processing": "Server; self-hosted native engine, no external conversion service",
"browser_agent": {
"supported": true,
"name": "run_current_tool",
"discovery": "WebMCP on the human page in a supporting browser",
"verification": "See audit/API-AUDIT.md; availability is not verification"
}
}Page guide
Ask a question about a document's readable text.
This tool needs server processing
The public server is not connected yet. File selection and processing are unavailable on this website.
Browse other tools in this categoryHow to use Chat with document
- Choose a file in PDF, DOCX or TXT.
- Review the settings, then choose Run Chat with document.
- Review the result, then use Copy result or a download link when available.
Useful next steps
What to expect
Ask a question about the text in a document. Runs with local model weights on this website’s server. No external AI API is used. Review the result for errors. Answers from one uploaded document per request. No persistent index or chat history is stored. Source limited to 16,000 characters.