Hi everyone, I’m trying to create a bot that will call an action to allow uploading of their research papers or papers that was obtained through collaboration and then subsequently summarise it after it was uploaded.
so I created an action for uploading but I’m unable to creat an action to summarise the uploaded doc. Any gurus here that can help ?
The YAML code goes into a topic. Click on the three dots and then "Open code editor". I agree the pattern is more advanced and not very low-code. I hope that built-in file upload capabilities will come soon.
Thanks again ! Just because I’m really a noob at this. Where would I paste this code and did you code this from scratch ? Is there an Ai tool that you are using within copilot studio to help with this coding ? Thanks again
For now, you will have to follow a custom pattern. Here's a custom canvas that will send an attachment to Power Automate: upload_pa_template_html (github.com).
You copilot will intercept an event from the custom canvas, telling the copilot a file with a specific GUID has been uploaded to Dataverse. Then it is up to you do something with the file (e.g. send to AI builder):
kind: AdaptiveDialog
beginDialog:
kind: OnEventActivity
id: main
eventName: uploadFile
actions:
- kind: SetVariable
id: setVariable_ZaaEfM
variable: Topic.fileID
value: =Text(System.Activity.Value)
- kind: SendActivity
id: sendActivity_lis3Um
activity: Thanks! trying to extract data now using a highly sophisticated AI model
- kind: InvokeFlowAction
id: invokeFlowAction_W4gGku
input:
binding:
text: =Topic.fileID
output:
binding:
amounttotal: Topic.amountTotal
vendorname: Topic.vendorName
flowId: cb32bb85-a0c3-ee11-9079-000d3a119782
- kind: SendActivity
id: sendActivity_I6gp0P
activity: Here are the details I've extracted. Double check the details and click submit.
- kind: AdaptiveCardPrompt
id: amfJgd
card: |-
={
type: "AdaptiveCard",
body: [
{
type: "TextBlock",
text: "Invoice Details",
weight: "Bolder",
size: "Medium"
},
{
type: "Input.Text",
id: "vendorName",
placeholder: "Vendor Name",
value: Topic.vendorName,
label: "Vendor Name"
},
{
type: "Input.Number",
id: "invoiceTotal",
placeholder: "Invoice Total",
min: 0,
value: Topic.amountTotal,
label: "Invoice Total"
}
],
actions: [
{
type: "Action.Submit",
title: "Submit",
data: {
submitType: "vendorInvoiceSubmission"
}
}
],
'$schema': "http://adaptivecards.io/schemas/adaptive-card.json",
version: "1.4"
}
output:
binding:
actionSubmitId: Topic.actionSubmitId
invoiceTotal: Topic.invoiceTotal
submitType: Topic.submitType
vendorName: Topic.vendorName
outputType:
properties:
actionSubmitId: String
invoiceTotal: Number
submitType: String
vendorName: String
- kind: SendActivity
id: sendActivity_oOlNM2
activity: |-
Thanks!
I'll submit the invoice for approval
Thanks! What action did you use to upload documents ? If let’s say we are uploading pdfs?
@Umianta , Gen Answers will summarize search results, but it is not the best tool when the requirement is to analyze or summarize a specific document.
@Weng , a possible flow would be: upload the doc -> extract text using AI Hub (AI Builder) -> summarize the text using a custom prompt (also AI Hub/AI Builder)
Hi @Weng
Utilize Generative Answers nodes for summarizing. For further details, consult the following documentation:
If this was helpful:
⭐Please mark it as a solution
⭐Give me a thumbs-up
⭐Connect on LinkedIn
⭐I consistently upload technical videos. If you're interested, please visit and subscribe to my YouTube Channel
⭐Always glad to help, Umesh Khandelwal!
Ekta Gupta
4
stampcoin
2