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.
