Proměňte statické dokumenty v praktické znalosti pomocí AIKit

Automaticky přeloženo z Deepl

Rozsáhlé zprávy, smlouvy nebo dokumentační soubory často obsahují více informací, než je možné rychle zpracovat. Nebylo by skvělé, kdybyste mohli jednoduše nahrát dokument PDF ze své aplikace 4D a nechat AI, aby vám pomohla jej shrnout, extrahovat klíčová data nebo odpovědět na otázky týkající se jeho obsahu?

Díky nové třídě OpenAI.files je tento pracovní postup nyní velmi jednoduchý. Můžete snadno nahrávat soubory a pomocí AI s jejich obsahem pracovat mnoha způsoby.

Krok 1 – Nahrajte svůj dokument

Funkce OpenAI.files.create() vám umožňuje nahrát soubor, který lze později použít v koncových bodech OpenAI.

Zde je příklad, který nahraje soubor PDF a nastaví jeho účel na user_data:

var $file := File("/RESOURCES/MeetingReport.pdf")
var $clientAI : cs.AIKit.OpenAI:=cs.AIManagement.new().clientAI


// Upload the file
// $file: the 4D.File object representing the local document
// "user_data": the intended purpose of the file
// expires_after: optional policy to automatically delete the file after 1 hour
var $result:=$clientAI.files.create($file; "user_data"; {expires_after: {anchor: "created_at"; seconds: 3600}})

//$result.file{
//  "object":"file",
//  "id":"file-8WJG5F9PYR3SCbL2dKJ5b2",
//  "purpose":"user_data",
//  "filename":"2510.07311v1.pdf",
//  "bytes":912072,
//  "created_at":1760433437,
//  "expires_at":1760437037,
//  "status":"processed",
//  "status_details":null
//}

Po nahrání obsahuje výsledek podrobné informace o souboru, včetně jeho ID, které bude použito později.

⚠️ Důležité: Ne všechny typy souborů jsou podporovány všemi modely. Vždy zkontrolujte dokumentaci modelu, který používáte, abyste se ujistili, že jsou vaše soubory kompatibilní.

Krok 2 – Propojte soubor se svou zprávou

Po nahrání souboru jej můžete propojit se zprávou pomocí funkce OpenAIMessage.addFileId(). Tím se AI modelu sdělí, aby při generování odpovědi zohlednil obsah nahraného souboru.

var $clientAI:=cs.AIManagement.new().clientAI
var $chatHelper:=$clientAI.chat.create("You are an assistant specializing in file analysis and parsing.")

// Create a new OpenAIMessage object with role "user" and a prompt
var $message:=cs.AIKit.OpenAIMessage.new({role: "user"; content: "Could you summarize this document?"})
// Attach the uploaded file to the message by adding its file id
// This tells the AI which document should be summarized
$message.addFileId($result.file.id)

// Send the message to the AI chat helper and store the summarized text
var $summary:=$chatHelper.prompt($message)

Model analyzuje obsah nahraného souboru a vrátí stručné shrnutí jeho hlavních bodů.

Krok 3 – Odstranění souboru ze serveru

Po dokončení shrnutí nebo analýzy můžete nahrávaný soubor smazat, abyste uvolnili místo nebo zachovali soukromí. To můžete provést pomocí funkce OpenAI.files.delete():

// Delete the uploaded file using its ID
var $delete:=$ClientAI.files.delete($result.file.id)

Správa nahraných souborů

Po nahrání souboru můžete zobrazit seznam všech souborů ve vaší organizaci nebo získat podrobnosti o konkrétním souboru.

Seznam všech nahraných souborů

// List all files uploaded by your organization
var $filesList:=$clientAI.files.list()

Získat konkrétní soubor

// Get detailed info about a single file using its id
var $fileInfo:=$clientAI.files.retrieve($result.file.id)

Závěr

Kombinací funkcí OpenAI.files.create() a OpenAIChatHelper.prompt() můžete ve svých aplikacích 4D nabídnout plynulou funkci analýzy dokumentů. Uživatelé jednoduše nahrají soubor a během několika sekund obdrží jasný a přesný souhrn vytvořený pomocí umělé inteligence.

Ale tím to nekončí. Stejný přístup lze použít k extrakci konkrétních informací, zodpovězení otázek nebo vyhledání konkrétních detailů v dokumentu – to vše bez nutnosti ručního čtení. Otevírá se tak nekonečné množství možností: automatické zápisy z jednání, rychlé seznámení s dlouhými technickými dokumenty nebo rychlá extrakce klíčových dat – to vše ve vašem prostředí 4D.

Fabrice Mainguené
- Product Owner -Fabrice Mainguené se připojil k týmu 4D Program v listopadu 2016. Jako Product Owner má na starosti psaní uživatelských příběhů, které následně převádí do funkčních specifikací. Jeho úkolem je také zajistit, aby dodaná implementace funkcí splňovala potřeby zákazníků.Po získání bakalářského titulu v oboru informatiky na CNAM nastoupil Fabrice do malé softwarové vydavatelské společnosti jako vývojář Windev. Poté pracoval pro různé společnosti v oblasti průmyslu a obchodu jako vývojář aplikací Windev a webových aplikací a také jako technický poradce pro nové funkce.