DocWire SDK
DocWire SDK: Deterministic, auditable, and secure data processing in C++20. On-premise by default. No compromises on computational speed.
Loading...
Searching...
No Matches
local_ai_summary.cpp

This example demonstrates how to create a summary of a document using a built-in local AI model.

#include "docwire.h"
#include "ensure.h"
#include "fuzzy_match.h"
#include <sstream>
int main(int argc, char* argv[])
{
using namespace docwire;
std::stringstream out_stream;
try
{
std::filesystem::path("data_processing_definition.doc") | content_type::detector{} | office_formats_parser{} | plain_text_exporter() | ai::local::summarize() | out_stream;
ensure(fuzzy_match::ratio(out_stream.str(), "Data processing is the collection, organization, analysis, and interpretation of data.\n")) > 50;
}
catch (const std::exception& e)
{
std::cerr << errors::diagnostic_message(e) << std::endl;
return 1;
}
return 0;
}
Content type detection chain element.
A utility for creating expressive, exception-throwing assertions in a fluent style.
Definition ensure.h:56
A composite parser handling various office document formats.
Exports data to plain text format.
std::string diagnostic_message(const std::exception &e)
Generates a diagnostic message for the given nested exceptions chain.
The main namespace for the DocWire SDK.
Definition ai_elements.h:19