Автоматизація вилучення даних з PDF-файлів, перетворення їх у структурований формат та подальша інтеграція з Google Sheets займає до 30 хвилин вручну, але з n8n та локальною LLM цей час скорочується до 5 хвилин.
Контекст і проблема
Багато компаній використовують PDF-файли для зберігання інформації: звіти, рахунки, контракти. Витяг даних з цих файлів та їх подальша обробка – рутинна задача, що потребує значних людських ресурсів. Наприклад, відділ фінансів витрачає 8 годин на тиждень на введення даних з рахунків-фактур у систему обліку. Використання хмарних API ШІ для цього завдання може призвести до значних фінансових витрат, особливо при великих обсягах даних.
Практична реалізація
Ми створимо workflow в n8n, який буде автоматично витягувати текст з PDF, використовувати локальну LLM (через Ollama) для вилучення ключових даних (наприклад, сума, дата, постачальник) та записувати їх в Google Sheet.
[CODE]
Встановлюємо Ollama: https://ollama.com/
Завантажуємо модель, наприклад llama2: ollama pull llama2
n8n workflow:
1. PDF Reader Node:
– File: “path/to/your/file.pdf”
– Read all pages: true
2. OpenAI Node (адаптовано для Ollama):
– Model: “llama2” (або інша завантажена модель)
– Prompt: “Extract the amount, date, and supplier from the following text:\n{{trigger.data.text}}”
– API Key: “” (Оскільки Ollama працює локально, ключ не потрібен)
– API URL: “http://localhost:11434/api/generate” (URL Ollama API)
3. Function Node (для парсингу JSON відповіді від LLM):
– Code:
javascript
const response = JSON.parse($.openai.json);
return {
amount: response.amount,
date: response.date,
supplier: response.supplier
};
# 4. Google Sheets Node:
– Method: “Append”
– Spreadsheet ID: “your_spreadsheet_id”
– Sheet Name: “Sheet1”
– Data:
– amount: “{{function.amount}}”
– date: “{{function.date}}”
– supplier: “{{function.supplier}}”
Цей workflow дозволяє автоматично витягувати необхідну інформацію з PDF-файлів та записувати її в Google Sheets, усуваючи ручне введення даних. Завдяки використанню локальної LLM, дані не покидають локальну інфраструктуру, забезпечуючи більшу конфіденційність та контроль.
Типові помилки
- Неправильний Prompt для LLM: Якщо LLM не правильно розуміє інструкції, вона може видавати неточні результати. Використовуйте ітеративний підхід, експериментуйте з різними формулюваннями Prompt, щоб досягти оптимальної точності.
- Проблеми з API URL Ollama: Переконайтеся, що Ollama сервер запущено та доступний за вказаним URL (http://localhost:11434/api/generate). Неправильний URL призведе до помилок зв’язку.
- Неправильний формат JSON-відповіді: LLM може повертати JSON у неочікуваному форматі. Перевірте структуру відповіді та адаптуйте код Function Node відповідно.
Результат
Після впровадження цього workflow, час на обробку одного PDF-файлу скоротився з 30 хвилин до 5 хвилин, що дозволяє заощаджувати 25 хвилин на файл. Почати автоматизацію можна вже зараз, встановивши Ollama та n8n та скопіювавши наведений приклад workflow.