|
| 1 | +--- |
| 2 | +title: Aspose::Words::AI::AiModel::Summarize method |
| 3 | +linktitle: Summarize |
| 4 | +second_title: Aspose.Words for C++ API Reference |
| 5 | +description: 'Aspose::Words::AI::AiModel::Summarize method. Generates summaries for an array of documents, with options to control the summary length and other settings. This method utilizes the connected AI model for processing each document in the array in C++.' |
| 6 | +type: docs |
| 7 | +weight: 4334 |
| 8 | +url: /cpp/aspose.words.ai/aimodel/summarize/ |
| 9 | +--- |
| 10 | +## AiModel::Summarize(System::ArrayPtr\<System::SharedPtr\<Aspose::Words::Document\>\>, System::SharedPtr\<Aspose::Words::AI::SummarizeOptions\>) method |
| 11 | + |
| 12 | + |
| 13 | +Generates summaries for an array of documents, with options to control the summary length and other settings. This method utilizes the connected [AI](../../) model for processing each document in the array. |
| 14 | + |
| 15 | +```cpp |
| 16 | +virtual System::SharedPtr<Aspose::Words::Document> Aspose::Words::AI::AiModel::Summarize(System::ArrayPtr<System::SharedPtr<Aspose::Words::Document>> sourceDocuments, System::SharedPtr<Aspose::Words::AI::SummarizeOptions> options=nullptr)=0 |
| 17 | +``` |
| 18 | +
|
| 19 | +
|
| 20 | +| Parameter | Type | Description | |
| 21 | +| --- | --- | --- | |
| 22 | +| sourceDocuments | System::ArrayPtr\<System::SharedPtr\<Aspose::Words::Document\>\> | An array of documents to be summarized. | |
| 23 | +| options | System::SharedPtr\<Aspose::Words::AI::SummarizeOptions\> | Optional settings to control the summary length and other parameters | |
| 24 | +
|
| 25 | +### ReturnValue |
| 26 | +
|
| 27 | +A summarized version of the document's content. |
| 28 | +
|
| 29 | +## Examples |
| 30 | +
|
| 31 | +
|
| 32 | +
|
| 33 | +Shows how to summarize text using OpenAI and [Google](../../../aspose.words.ai.google/) models. |
| 34 | +```cpp |
| 35 | +auto firstDoc = System::MakeObject<Aspose::Words::Document>(get_MyDir() + u"Big document.docx"); |
| 36 | +auto secondDoc = System::MakeObject<Aspose::Words::Document>(get_MyDir() + u"Document.docx"); |
| 37 | +
|
| 38 | +System::String apiKey = System::Environment::GetEnvironmentVariable(u"API_KEY"); |
| 39 | +// Use OpenAI or Google generative language models. |
| 40 | +System::SharedPtr<Aspose::Words::AI::AiModel> model = (System::ExplicitCast<Aspose::Words::AI::OpenAiModel>(Aspose::Words::AI::AiModel::Create(Aspose::Words::AI::AiModelType::Gpt4OMini)->WithApiKey(apiKey)))->WithOrganization(u"Organization")->WithProject(u"Project"); |
| 41 | +
|
| 42 | +auto options = System::MakeObject<Aspose::Words::AI::SummarizeOptions>(); |
| 43 | +
|
| 44 | +options->set_SummaryLength(Aspose::Words::AI::SummaryLength::Short); |
| 45 | +System::SharedPtr<Aspose::Words::Document> oneDocumentSummary = model->Summarize(firstDoc, options); |
| 46 | +oneDocumentSummary->Save(get_ArtifactsDir() + u"AI.AiSummarize.One.docx"); |
| 47 | +
|
| 48 | +options->set_SummaryLength(Aspose::Words::AI::SummaryLength::Long); |
| 49 | +System::SharedPtr<Aspose::Words::Document> multiDocumentSummary = model->Summarize(System::MakeArray<System::SharedPtr<Aspose::Words::Document>>({firstDoc, secondDoc}), options); |
| 50 | +multiDocumentSummary->Save(get_ArtifactsDir() + u"AI.AiSummarize.Multi.docx"); |
| 51 | +``` |
| 52 | + |
| 53 | +## See Also |
| 54 | + |
| 55 | +* Class [Document](../../../aspose.words/document/) |
| 56 | +* Class [SummarizeOptions](../../summarizeoptions/) |
| 57 | +* Class [AiModel](../) |
| 58 | +* Namespace [Aspose::Words::AI](../../) |
| 59 | +* Library [Aspose.Words for C++](../../../) |
| 60 | +## AiModel::Summarize(System::SharedPtr\<Aspose::Words::Document\>, System::SharedPtr\<Aspose::Words::AI::SummarizeOptions\>) method |
| 61 | + |
| 62 | + |
| 63 | +Generates a summary of the specified document, with options to adjust the length of the summary. This operation leverages the connected [AI](../../) model for content processing. |
| 64 | + |
| 65 | +```cpp |
| 66 | +virtual System::SharedPtr<Aspose::Words::Document> Aspose::Words::AI::AiModel::Summarize(System::SharedPtr<Aspose::Words::Document> sourceDocument, System::SharedPtr<Aspose::Words::AI::SummarizeOptions> options=nullptr)=0 |
| 67 | +``` |
| 68 | +
|
| 69 | +
|
| 70 | +| Parameter | Type | Description | |
| 71 | +| --- | --- | --- | |
| 72 | +| sourceDocument | System::SharedPtr\<Aspose::Words::Document\> | The document to be summarized. | |
| 73 | +| options | System::SharedPtr\<Aspose::Words::AI::SummarizeOptions\> | Optional settings to control the summary length and other parameters. | |
| 74 | +
|
| 75 | +### ReturnValue |
| 76 | +
|
| 77 | +A summarized version of the document's content. |
| 78 | +
|
| 79 | +## Examples |
| 80 | +
|
| 81 | +
|
| 82 | +
|
| 83 | +Shows how to summarize text using OpenAI and [Google](../../../aspose.words.ai.google/) models. |
| 84 | +```cpp |
| 85 | +auto firstDoc = System::MakeObject<Aspose::Words::Document>(get_MyDir() + u"Big document.docx"); |
| 86 | +auto secondDoc = System::MakeObject<Aspose::Words::Document>(get_MyDir() + u"Document.docx"); |
| 87 | +
|
| 88 | +System::String apiKey = System::Environment::GetEnvironmentVariable(u"API_KEY"); |
| 89 | +// Use OpenAI or Google generative language models. |
| 90 | +System::SharedPtr<Aspose::Words::AI::AiModel> model = (System::ExplicitCast<Aspose::Words::AI::OpenAiModel>(Aspose::Words::AI::AiModel::Create(Aspose::Words::AI::AiModelType::Gpt4OMini)->WithApiKey(apiKey)))->WithOrganization(u"Organization")->WithProject(u"Project"); |
| 91 | +
|
| 92 | +auto options = System::MakeObject<Aspose::Words::AI::SummarizeOptions>(); |
| 93 | +
|
| 94 | +options->set_SummaryLength(Aspose::Words::AI::SummaryLength::Short); |
| 95 | +System::SharedPtr<Aspose::Words::Document> oneDocumentSummary = model->Summarize(firstDoc, options); |
| 96 | +oneDocumentSummary->Save(get_ArtifactsDir() + u"AI.AiSummarize.One.docx"); |
| 97 | +
|
| 98 | +options->set_SummaryLength(Aspose::Words::AI::SummaryLength::Long); |
| 99 | +System::SharedPtr<Aspose::Words::Document> multiDocumentSummary = model->Summarize(System::MakeArray<System::SharedPtr<Aspose::Words::Document>>({firstDoc, secondDoc}), options); |
| 100 | +multiDocumentSummary->Save(get_ArtifactsDir() + u"AI.AiSummarize.Multi.docx"); |
| 101 | +``` |
| 102 | + |
| 103 | +## See Also |
| 104 | + |
| 105 | +* Class [Document](../../../aspose.words/document/) |
| 106 | +* Class [SummarizeOptions](../../summarizeoptions/) |
| 107 | +* Class [AiModel](../) |
| 108 | +* Namespace [Aspose::Words::AI](../../) |
| 109 | +* Library [Aspose.Words for C++](../../../) |
0 commit comments