From 8a288eb83acdd7e8e09cdbd33ed50b71b210f27e Mon Sep 17 00:00:00 2001 From: Aaron Wilkowitz <157151487+aaronwilkowitz-openai@users.noreply.github.com> Date: Mon, 22 Jul 2024 15:23:47 -0400 Subject: [PATCH] Aaronwilkowitz/sharepoint (#1299) Co-authored-by: maxreid-openai --- .../.gpt_action_getting_started.ipynb | 18 + .../gpt_action_bigquery.ipynb | 19 + .../gpt_action_outlook.ipynb | 18 + .../gpt_action_sharepoint_doc.ipynb | 640 ++++++++++++++++ .../gpt_action_sharepoint_text.ipynb | 701 ++++++++++++++++++ .../gpt_middleware_azure_function.ipynb | 485 ++++++++++++ ...and_Microsoft_Graph_to_Query_SharePoint.md | 1 - .../solution_two_preprocessing.js | 10 +- images/solution_2_architecture.png | Bin 198944 -> 198601 bytes registry.yaml | 44 +- 10 files changed, 1922 insertions(+), 14 deletions(-) create mode 100644 examples/chatgpt/gpt_actions_library/gpt_action_sharepoint_doc.ipynb create mode 100644 examples/chatgpt/gpt_actions_library/gpt_action_sharepoint_text.ipynb create mode 100644 examples/chatgpt/gpt_actions_library/gpt_middleware_azure_function.ipynb diff --git a/examples/chatgpt/gpt_actions_library/.gpt_action_getting_started.ipynb b/examples/chatgpt/gpt_actions_library/.gpt_action_getting_started.ipynb index fc8a936..da30e47 100644 --- a/examples/chatgpt/gpt_actions_library/.gpt_action_getting_started.ipynb +++ b/examples/chatgpt/gpt_actions_library/.gpt_action_getting_started.ipynb @@ -33,6 +33,24 @@ "Note: When setting up the GPT Action, for authentication, leave it with \"None\". This is a public API and does not require any Authentication" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Value + Example Business Use Cases" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "**Value**: Users can now leverage ChatGPT's natural language capability to forecast the weather\n", + "\n", + "**Example Use Cases**: \n", + "- Users can plan out their day based on weather patterns\n", + "- Users can quickly visualize (including graphs) what the weather is forecasted to look like" + ] + }, { "cell_type": "markdown", "metadata": {}, diff --git a/examples/chatgpt/gpt_actions_library/gpt_action_bigquery.ipynb b/examples/chatgpt/gpt_actions_library/gpt_action_bigquery.ipynb index 3742286..1018a1a 100644 --- a/examples/chatgpt/gpt_actions_library/gpt_action_bigquery.ipynb +++ b/examples/chatgpt/gpt_actions_library/gpt_action_bigquery.ipynb @@ -33,6 +33,25 @@ "Note: these instructions return back a functioning SQL statement, rather than the result itself. Currently middleware is required to return back a CSV file – we’ll be posting instructions on an example of that soon" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Value + Example Business Use Cases" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "**Value**: Users can now leverage ChatGPT's natural language capability to connect directly to BigQuery's DWH. \n", + "\n", + "**Example Use Cases**: \n", + "- Data scientists can connect to tables and run data analyses using ChatGPT's Data Analysis\n", + "- Citizen data users can ask basic questions of their transactional data\n", + "- Users gain more visibility into their data & potential anomalies" + ] + }, { "cell_type": "markdown", "metadata": {}, diff --git a/examples/chatgpt/gpt_actions_library/gpt_action_outlook.ipynb b/examples/chatgpt/gpt_actions_library/gpt_action_outlook.ipynb index e346aae..4bde024 100644 --- a/examples/chatgpt/gpt_actions_library/gpt_action_outlook.ipynb +++ b/examples/chatgpt/gpt_actions_library/gpt_action_outlook.ipynb @@ -31,6 +31,24 @@ "This particular GPT Action provides an overview of how to connect to Outlook, Microsoft's web service for emailing and calendar events. This action assumes a user’s context and allows them to send and retrieve emails and calendar events from Outlook." ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Value + Example Business Use Cases" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "**Value**: Users can now leverage ChatGPT's natural language capability to connect directly to Outlook\n", + "\n", + "**Example Use Cases**: \n", + "- A user can look up all of their meetings for the day and have ChatGPT summarize the day\n", + "- A user can email a ChatGPT output to someone directly" + ] + }, { "cell_type": "markdown", "metadata": {}, diff --git a/examples/chatgpt/gpt_actions_library/gpt_action_sharepoint_doc.ipynb b/examples/chatgpt/gpt_actions_library/gpt_action_sharepoint_doc.ipynb new file mode 100644 index 0000000..e12af03 --- /dev/null +++ b/examples/chatgpt/gpt_actions_library/gpt_action_sharepoint_doc.ipynb @@ -0,0 +1,640 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# GPT Action Library: Sharepoint (Return file for Data Analysis / Document Summarization)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Introduction" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This page provides an instruction & guide for developers building a GPT Action for a specific application. Before you proceed, make sure to first familiarize yourself with the following information: \n", + "- [Introduction to GPT Actions](https://platform.openai.com/docs/actions)\n", + "- [Introduction to GPT Actions Library](https://platform.openai.com/docs/actions/actions-library)\n", + "- [Example of Building a GPT Action from Scratch](https://platform.openai.com/docs/actions/getting-started)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This solution enables a GPT action to answer a user’s question with the context of files the user can access in SharePoint or Office365, using Microsoft’s Graph API [search capabilities](https://learn.microsoft.com/en-us/graph/api/resources/search-api-overview?view=graph-rest-1.0) and the ability to [retrieve files](https://learn.microsoft.com/en-us/graph/api/driveitem-get?view=graph-rest-1.0\\&tabs=http). It uses Azure Functions to process the Graph API response and convert it to a human readable format or structure it in a way ChatGPT understands. This code is meant to be directional, and you should modify it to your requirements.\n", + "\n", + "This solution uses the ability to[ retrieve files in Actions](https://platform.openai.com/docs/actions/sending-files) and use them as if you had uploaded them directly to a conversation. The Azure Function returns a base64 string that ChatGPT converts into a file. This solution can handle both structured and unstructured data, but does have size volume limitations (see docs [here](https://platform.openai.com/docs/actions/sending-files))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Value + Example Business Use Cases" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "**Value**: Users can now leverage ChatGPT's natural language capability to connect directly to files in Sharpeoint\n", + "\n", + "**Example Use Cases**: \n", + "- A user needs to look up which files relate to a certain topic\n", + "- A user needs an answer to a critical question, buried deep in documents" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Architecture / Example" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![](../../../images/solution_1.gif)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "This solution uses a Node.js Azure Function to, based on the logged in user:\n", + "\n", + "1. Search for a relevant file that the user has access to, based on the user’s initial question. \n", + "\n", + "2. For each file that is found, convert it to a base64 string.\n", + "\n", + "3. Format the data in the structure ChatGPT is expecting [here](https://platform.openai.com/docs/actions/sending-files/inline-option).\n", + "\n", + "4. Return that to ChatGPT. The GPT then can use those files as if you had uploaded it to the conversation." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![](../../../images/solution_1_architecture.png)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Application Information" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Application Key Links" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Check out these links from the application before you get started:\n", + "- Application Website: https://www.microsoft.com/en-us/microsoft-365/sharepoint/collaboration\n", + "- Application API Documentation: https://learn.microsoft.com/en-us/previous-versions/office/developer/sharepoint-rest-reference/" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Application Prerequisites" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Before you get started, make sure you go through the following steps in your application environment:\n", + "- Access to a Sharepoint environment \n", + "- Postman (and knowledge of APIs and OAuth)\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Middleware Information" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "If you follow the [search concept files guide](https://learn.microsoft.com/en-us/graph/search-concept-files), the [Microsoft Graph Search API](https://learn.microsoft.com/en-us/graph/search-concept-files) returns references to files that fit the criteria, but not the file contents themselves. Therefore, middleware is required, rather than hitting the MSFT endpoints directly.\n", + "\n", + "We need to restructure the response from that API so that it matches the expected structure in `openaiFileResponse` outlined [here](https://platform.openai.com/docs/actions/getting-started/inline-option)." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Additional Steps" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Set up Azure Function" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "1. Set up an Azure Function using the steps in the [Azure Function cookbook](https://cookbook.openai.com/examples/chatgpt/gpt_actions_library/gpt_middleware_azure_function)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Add in Function Code" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Now that you have an authenticated Azure Function, we can update the function to search SharePoint / O365\n", + "\n", + "2. Go to your test function and paste in the code from [this file](https://github.com/openai/openai-cookbook/blob/main/examples/chatgpt/sharepoint_azure_function/solution_one_file_retrieval.js). Save the function.\n", + "\n", + "> **This code is meant to be directional** - while it should work out of the box, it is designed to be customized to your needs (see examples towards the end of this document).\n", + "\n", + "3. Set up the following env variables by going to the **Configuration** tab on the left under **Settings.** Note that this may be listed directly in **Environment Variables** depending on your Azure UI.\n", + "\n", + " 1. `TENANT_ID`: copied from previous section\n", + "\n", + " 2. `CLIENT_ID`: copied from previous section\n", + "\n", + "4. Go to the **Console** tab under the **Development Tools**\n", + "\n", + " 1. Install the following packages in console\n", + "\n", + " 1. `npm install @microsoft/microsoft-graph-client`\n", + "\n", + " 2. `npm install axios`\n", + "\n", + "5. Once this is complete, try calling the function (POST call) from Postman again, putting the below into body (using a query and search term you think will generate responses).\n", + "\n", + " ```json\n", + " {\n", + " \"searchTerm\": \"\"\n", + " }\n", + " ```\n", + "\n", + "6. If you get a response, you are ready to set this up with a Custom GPT! See the ChatGPT Section of the Azure Function page for more details on setting this up\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## More Detailed Walkthrough" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "The below walks through setup instructions and walkthrough unique to this solution. You can find the entire code [here](https://github.com/openai/openai-cookbook/blob/main/examples/chatgpt/sharepoint_azure_function/solution_one_file_retrieval.js).\n", + "\n", + "### Code Walkthrough\n", + "\n", + "The below walks through the different parts of the function. Before you begin, ensure you have the required packages installed and environment variables set up (see the Installation Steps section).\n", + "\n", + "\n", + "#### Implementing the Authentication \n", + "\n", + "Below we have a few helper functions that we’ll use in the function.\n", + "\n", + "\n", + "##### Initializing the Microsoft Graph Client\n", + "\n", + "Create a function to initialize the Graph client with an access token. This will be used to search through Office 365 and SharePoint.\n", + "\n", + "```javascript\n", + "const { Client } = require('@microsoft/microsoft-graph-client');\n", + "\n", + "function initGraphClient(accessToken) {\n", + " return Client.init({\n", + " authProvider: (done) => {\n", + " done(null, accessToken);\n", + " }\n", + " });\n", + "}\n", + "```\n", + "\n", + "##### Obtaining an On-Behalf-Of (OBO) Token\n", + "\n", + "This function uses an existing bearer token to request an OBO token from Microsoft's identity platform. This enables passing through the credentials to ensure the search only returns files the logged-in user can access.\n", + "\n", + "```javascript\n", + "const axios = require('axios');\n", + "const qs = require('querystring');\n", + "\n", + "async function getOboToken(userAccessToken) {\n", + "    const { TENANT_ID, CLIENT_ID, MICROSOFT_PROVIDER_AUTHENTICATION_SECRET } = process.env;\n", + "    const params = {\n", + "        client_id: CLIENT_ID,\n", + "        client_secret: MICROSOFT_PROVIDER_AUTHENTICATION_SECRET,\n", + "        grant_type: 'urn:ietf:params:oauth:grant-type:jwt-bearer',\n", + "        assertion: userAccessToken,\n", + "        requested_token_use: 'on_behalf_of',\n", + "        scope: 'https://graph.microsoft.com/.default'\n", + "    };\n", + "\n", + "    const url = `https\\://login.microsoftonline.com/${TENANT_ID}/oauth2/v2.0/token`;\n", + "    try {\n", + "        const response = await axios.post(url, qs.stringify(params), {\n", + "            headers: { 'Content-Type': 'application/x-www-form-urlencoded' }\n", + "        });\n", + "        return response.data.access\\_token;\n", + "    } catch (error) {\n", + "        console.error('Error obtaining OBO token:', error.response?.data || error.message);\n", + "        throw error;\n", + "    }\n", + "}\n", + "```\n", + "\n", + "#### Retrieving Content from O365 / SharePoint Items\n", + "\n", + "This function fetches the content of drive items, converts it to a base64 string, and restructures to match the `openaiFileResponse` format.\n", + "```javascript\n", + "const getDriveItemContent = async (client, driveId, itemId, name) => {\n", + "   try\n", + "       const filePath = `/drives/${driveId}/items/${itemId}`;\n", + "       const downloadPath = filePath + `/content`\n", + "       // this is where we get the contents and convert to base64\n", + "       const fileStream = await client.api(downloadPath).getStream();\n", + "       let chunks = [];\n", + "           for await (let chunk of fileStream) {\n", + "               chunks.push(chunk);\n", + "           }\n", + "       const base64String = Buffer.concat(chunks).toString('base64');\n", + "       // this is where we get the other metadata to include in response\n", + "       const file = await client.api(filePath).get();\n", + "       const mime_type = file.file.mimeType;\n", + "       const name = file.name;\n", + "       return {\"name\":name, \"mime_type\":mime_type, \"content\":base64String}\n", + "   } catch (error) {\n", + "       console.error('Error fetching drive content:', error);\n", + "       throw new Error(`Failed to fetch content for ${name}: ${error.message}`);\n", + "   }\n", + "```\n", + "\n", + "#### Creating the Azure Function to Handle Requests\n", + "\n", + "Now that we have all these helper functions, the Azure Function will orchestrate the flow, by authenticating the user, performing the search, and iterating through the search results to extract the text and retrieve the relevant parts of the text to the GPT.\n", + "\n", + "**Handling HTTP Requests:** The function starts by extracting the query and searchTerm from the HTTP request. It checks if the Authorization header is present and extracts the bearer token.\n", + "\n", + "**Authentication:** Using the bearer token, it obtains an OBO token from Microsoft's identity platform using getOboToken defined above.\n", + "\n", + "**Initializing the Graph Client:** With the OBO token, it initializes the Microsoft Graph client using initGraphClient defined above.\n", + "\n", + "**Document Search:** It constructs a search query and sends it to the Microsoft Graph API to find documents based on the searchTerm.\n", + "\n", + "**Document Processing**: For each document returned by the search:\n", + "\n", + "- It retrieves the document content using getDriveItemContent.\n", + "\n", + "- It converts the document to base64 string and restructures it to match the `openaiFileResponse` structure.\n", + "\n", + "**Response**: The function sends them back in the HTTP response.\n", + "```javascript\n", + "module.exports = async function (context, req) {\n", + " // const query = req.query.query || (req.body && req.body.query);\n", + " const searchTerm = req.query.searchTerm || (req.body && req.body.searchTerm);\n", + " if (!req.headers.authorization) {\n", + " context.res = {\n", + " status: 400,\n", + " body: 'Authorization header is missing'\n", + " };\n", + " return;\n", + " }\n", + " /// The below takes the token passed to the function, to use to get an OBO token.\n", + " const bearerToken = req.headers.authorization.split(' ')[1];\n", + " let accessToken;\n", + " try {\n", + " accessToken = await getOboToken(bearerToken);\n", + " } catch (error) {\n", + " context.res = {\n", + " status: 500,\n", + " body: `Failed to obtain OBO token: ${error.message}`\n", + " };\n", + " return;\n", + " }\n", + " // Initialize the Graph Client using the initGraphClient function defined above\n", + " let client = initGraphClient(accessToken);\n", + " // this is the search body to be used in the Microsft Graph Search API: https://learn.microsoft.com/en-us/graph/search-concept-files\n", + " const requestBody = {\n", + " requests: [\n", + " {\n", + " entityTypes: ['driveItem'],\n", + " query: {\n", + " queryString: searchTerm\n", + " },\n", + " from: 0,\n", + " // the below is set to summarize the top 10 search results from the Graph API, but can configure based on your documents.\n", + " size: 10\n", + " }\n", + " ]\n", + " };\n", + "\n", + "\n", + " try {\n", + " // This is where we are doing the search\n", + " const list = await client.api('/search/query').post(requestBody);\n", + " const processList = async () => {\n", + " // This will go through and for each search response, grab the contents of the file and summarize with gpt-3.5-turbo\n", + " const results = [];\n", + " await Promise.all(list.value[0].hitsContainers.map(async (container) => {\n", + " for (const hit of container.hits) {\n", + " if (hit.resource[\"@odata.type\"] === \"#microsoft.graph.driveItem\") {\n", + " const { name, id } = hit.resource;\n", + " // The below is where the file lives\n", + " const driveId = hit.resource.parentReference.driveId;\n", + " // we use the helper function we defined above to get the contents, convert to base64, and restructure it\n", + " const contents = await getDriveItemContent(client, driveId, id, name);\n", + " results.push(contents)\n", + " }\n", + " }));\n", + " return results;\n", + " };\n", + " let results;\n", + " if (list.value[0].hitsContainers[0].total == 0) {\n", + " // Return no results found to the API if the Microsoft Graph API returns no results\n", + " results = 'No results found';\n", + " } else {\n", + " // If the Microsoft Graph API does return results, then run processList to iterate through.\n", + " results = await processList();\n", + " // this is where we structure the response so ChatGPT knows they are files\n", + " results = {'openaiFileResponse': results}\n", + " }\n", + " context.res = {\n", + " status: 200,\n", + " body: results\n", + " };\n", + " } catch (error) {\n", + " context.res = {\n", + " status: 500,\n", + " body: `Error performing search or processing results: ${error.message}`,\n", + " };\n", + " }\n", + "};\n", + "```\n", + "### Customizations\n", + "\n", + "Below are some potential areas to customize. \n", + "\n", + "- You can customize the GPT prompt to search again a certain amount of times if nothing is found.\n", + "\n", + "- You can customize the code to only search through specific SharePoint sites or O365 Drives by customizing the search query. This will help focus the search and improve the retrieval. The function as setup now looks through all files the logged-in user can access.\n", + "\n", + "- You can update the code to only return certain types of files. For example, only return structured data / CSVs. \n", + "\n", + "- You can customize the amount of files it searches through within the call to Microsoft Graph. Note that you should only put a maximum of 10 files based on the documentation [here](https://platform.openai.com/docs/actions/getting-started). \n", + "\n", + "### Considerations\n", + "\n", + "Note that all the same limitations of Actions apply here, with regards to returning 100K characters or less and the [45 second timeout](https://platform.openai.com/docs/actions/production/timeouts).\n", + "\n", + "- Make sure you read the documentation here around [returning files](https://platform.openai.com/docs/actions/sending-files) and [file uploads](https://help.openai.com/en/articles/8555545-file-uploads-faq), as those limitations apply here." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## ChatGPT Steps" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Custom GPT Instructions " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Once you've created a Custom GPT, copy the text below in the Instructions panel. Have questions? Check out [Getting Started Example](https://platform.openai.com/docs/actions/getting-started) to see how this step works in more detail." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "vscode": { + "languageId": "plaintext" + } + }, + "outputs": [], + "source": [ + "You are a Q&A helper that helps answer users questions. You have access to a documents repository through your API action. When a user asks a question, you pass in the \"searchTerm\" a single keyword or term you think you should use for the search.\n", + "\n", + "****\n", + "\n", + "Scenario 1: There are answers\n", + "\n", + "If your action returns results, then you take the results from the action and try to answer the users question. \n", + "\n", + "****\n", + "\n", + "Scenario 2: No results found\n", + "\n", + "If the response you get from the action is \"No results found\", stop there and let the user know there were no results and that you are going to try a different search term, and explain why. You must always let the user know before conducting another search.\n", + "\n", + "Example:\n", + "\n", + "****\n", + "\n", + "I found no results for \"DEI\". I am now going to try [insert term] because [insert explanation]\n", + "\n", + "****\n", + "\n", + "Then, try a different searchTerm that is similar to the one you tried before, with a single word. \n", + "\n", + "Try this three times. After the third time, then let the user know you did not find any relevant documents to answer the question, and to check SharePoint. \n", + "Be sure to be explicit about what you are searching for at each step.\n", + "\n", + "****\n", + "\n", + "In either scenario, try to answer the user's question. If you cannot answer the user's question based on the knowledge you find, let the user know and ask them to go check the HR Docs in SharePoint. " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### OpenAPI Schema " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Once you've created a Custom GPT, copy the text below in the Actions panel. Have questions? Check out [Getting Started Example](https://platform.openai.com/docs/actions/getting-started) to see how this step works in more detail." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This expects a response that matches the file retrieval structure in our doc [here](https://platform.openai.com/docs/actions/sending-files) and passes in a `searchTerm` parameter to inform the search.\n", + ">Make sure to switch the function app name, function name and code based on link copied in screenshot above" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "vscode": { + "languageId": "yaml" + } + }, + "outputs": [], + "source": [ + "openapi: 3.1.0\n", + "info:\n", + " title: SharePoint Search API\n", + " description: API for searching SharePoint documents.\n", + " version: 1.0.0\n", + "servers:\n", + " - url: https://{your_function_app_name}.azurewebsites.net/api\n", + " description: SharePoint Search API server\n", + "paths:\n", + " /{your_function_name}?code={enter your specific endpoint id here}:\n", + " post:\n", + " operationId: searchSharePoint\n", + " summary: Searches SharePoint for documents matching a query and term.\n", + " requestBody:\n", + " required: true\n", + " content:\n", + " application/json:\n", + " schema:\n", + " type: object\n", + " properties:\n", + " searchTerm:\n", + " type: string\n", + " description: A specific term to search for within the documents.\n", + " responses:\n", + " '200':\n", + " description: A CSV file of query results encoded in base64.\n", + " content:\n", + " application/json:\n", + " schema:\n", + " type: object\n", + " properties:\n", + " openaiFileResponseData:\n", + " type: array\n", + " items:\n", + " type: object\n", + " properties:\n", + " name:\n", + " type: string\n", + " description: The name of the file.\n", + " mime_type:\n", + " type: string\n", + " description: The MIME type of the file.\n", + " content:\n", + " type: string\n", + " format: byte\n", + " description: The base64 encoded contents of the file.\n", + " '400':\n", + " description: Bad request when the SQL query parameter is missing.\n", + " '413':\n", + " description: Payload too large if the response exceeds the size limit.\n", + " '500':\n", + " description: Server error when there are issues executing the query or encoding the results." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Authentication Instructions" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Below are instructions on setting up authentication with this 3rd party application. Have questions? Check out [Getting Started Example](https://platform.openai.com/docs/actions/getting-started) to see how this step works in more detail." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "*See above and on the [Azure Function cookbook](https://cookbook.openai.com/examples/chatgpt/gpt_actions_library/gpt_middleware_azure_function) for more detailed instructions on authentication.*" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## FAQ & Troubleshooting" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "- Why are you using the Microsoft Graph API in your code instead of the [SharePoint API](https://learn.microsoft.com/en-us/sharepoint/dev/sp-add-ins/get-to-know-the-sharepoint-rest-service?tabs=csom)?\n", + "\n", + " - The SharePoint API is legacy - per the Microsoft documentation [here](https://learn.microsoft.com/en-us/sharepoint/dev/apis/sharepoint-rest-graph), “For SharePoint Online, innovation using a REST API against SharePoint is driven via the Microsoft Graph REST API's.” The Graph API gives us more flexibility, and the SharePoint API still runs into the same file issues listed in the [Why is this necessary instead of interacting with the Microsoft Graph API directly?](#why-is-this-necessary-instead-of-interacting-with-the-microsoft-api-directly) section.\n", + "\n", + "- What types of files does this support?\n", + "\n", + " It follows the same guidelines as the documentation [here](https://help.openai.com/en/articles/8555545-file-uploads-faq) about file uploads. \n", + "\n", + "- Why do I need to request an OBO token?\n", + "\n", + " - When you try to use the same token to authenticate to the Graph API as the one you use to authenticate into the Azure Function, you get an “invalid audience” token. This is because the audience for the token can only be user\\_impersonation.\n", + "\n", + " - To address this, the function requests a new token scoped to Files.Read.All within the app using the [On Behalf Of flow](https://learn.microsoft.com/en-us/entra/identity-platform/v2-oauth2-on-behalf-of-flow). This will inherit the permissions of the logged in user, meaning this function will only search through files the logged-in user has access to. \n", + "\n", + " - We are purposefully requesting a new On Behalf Of token with each request, because Azure Function Apps are meant to be stateless. You could potentially integrate this with Azure Key Vault to store the secret and retrieve programmatically. " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "*Are there integrations that you’d like us to prioritize? Are there errors in our integrations? File a PR or issue in our github, and we’ll take a look.*\n" + ] + } + ], + "metadata": { + "language_info": { + "name": "python" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/examples/chatgpt/gpt_actions_library/gpt_action_sharepoint_text.ipynb b/examples/chatgpt/gpt_actions_library/gpt_action_sharepoint_text.ipynb new file mode 100644 index 0000000..0450900 --- /dev/null +++ b/examples/chatgpt/gpt_actions_library/gpt_action_sharepoint_text.ipynb @@ -0,0 +1,701 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# GPT Action Library: Sharepoint (Return as Document)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Introduction" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This page provides an instruction & guide for developers building a GPT Action for a specific application. Before you proceed, make sure to first familiarize yourself with the following information: \n", + "- [Introduction to GPT Actions](https://platform.openai.com/docs/actions)\n", + "- [Introduction to GPT Actions Library](https://platform.openai.com/docs/actions/actions-library)\n", + "- [Example of Building a GPT Action from Scratch](https://platform.openai.com/docs/actions/getting-started)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This solution enables a GPT action to answer a user’s question with the context of files the user can access in SharePoint or Office365, using Microsoft’s Graph API [search capabilities](https://learn.microsoft.com/en-us/graph/api/resources/search-api-overview?view=graph-rest-1.0) and the ability to [retrieve files](https://learn.microsoft.com/en-us/graph/api/driveitem-get?view=graph-rest-1.0\\&tabs=http). It uses Azure Functions to process the Graph API response and convert it to a human readable format or structure it in a way ChatGPT understands. This code is meant to be directional, and you should modify it to your requirements.\n", + "\n", + "This solution pre-processes the file within the Azure Function. The Azure Function returns text, instead of the base64 encoded file. Due to the pre-processing and the conversion to text, this solution is best used for large, unstructured documents, and for when you want to analyze more than the amount of files supported in the first solution (see documentation [here](https://platform.openai.com/docs/actions/sending-files))." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Value + Example Business Use Cases" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "**Value**: Users can now leverage ChatGPT's natural language capability to connect directly to files in Sharpeoint\n", + "\n", + "**Example Use Cases**: \n", + "- A user needs to look up which files relate to a certain topic\n", + "- A user needs an answer to a critical question, buried deep in documents" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Architecture / Example" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![](../../../images/solution_2.gif)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This solution uses a Node.js Azure Function to, based on the logged in user:\n", + "\n", + "1. Search for a relevant file that the user has access to, based on the user’s initial question.\n", + "\n", + "2. For each file that is found, convert it to a consistent readable format and retrieve all the text.\n", + "\n", + "3. Use GPT 4o mini (gpt-4o-mini) to extract the relevant text from the files based on the initial user’s question. Note the pricing of GPT 4o mini [here](https://openai.com/pricing#language-models) - since we are dealing with small token chunks, the cost of this step is nominal.  \n", + "\n", + "4. Returns that data to ChatGPT. The GPT then uses that information to respond to the user's initial question.\n", + "\n", + "As you can see from the below architecture diagram, the first three steps are the same as Solution 1. The main difference is that this solution converts the file to text instead of a base64 string, and then summarizes that text using GPT 4o mini." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![](../../../images/solution_2_architecture.png)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Application Information" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Application Key Links" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Check out these links from the application before you get started:\n", + "- Application Website: https://www.microsoft.com/en-us/microsoft-365/sharepoint/collaboration\n", + "- Application API Documentation: https://learn.microsoft.com/en-us/previous-versions/office/developer/sharepoint-rest-reference/" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Application Prerequisites" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Before you get started, make sure you go through the following steps in your application environment:\n", + "- Access to a Sharepoint environment \n", + "- Postman (and knowledge of APIs and OAuth)\n", + "- An OpenAI API Key from platform.openai.com" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Middleware Information" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "If you follow the [search concept files guide](https://learn.microsoft.com/en-us/graph/search-concept-files), the [Microsoft Graph Search API](https://learn.microsoft.com/en-us/graph/search-concept-files) returns references to files that fit the criteria, but not the file contents themselves. Therefore, middleware is required, rather than hitting the MSFT endpoints directly.\n", + "\n", + "Steps: \n", + "\n", + "1. loop through the returned files and download the files using the [Download File endpoint](https://learn.microsoft.com/en-us/graph/api/driveitem-get-content?view=graph-rest-1.0\\&tabs=http) or [Convert File endpoint](https://learn.microsoft.com/en-us/graph/api/driveitem-get-content-format?view=graph-rest-1.0\\&tabs=http)\n", + "\n", + "2. convert that Binary stream to human readable text using [pdf-parse](https://www.npmjs.com/package/pdf-parse)\n", + "\n", + "3. Then, we can optimize further by summarizing using gpt-4o-mini in the function to help with the 100,000 character limit we impose on Actions today. " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Additional Steps" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Set up Azure Function" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "1. Set up an Azure Function using the steps in the [Azure Function cookbook](https://cookbook.openai.com/examples/chatgpt/gpt_actions_library/gpt_middleware_azure_function)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Add in Function Code" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Now that you have an authenticated Azure Function, we can update the function to search SharePoint / O365\n", + "\n", + "2. Go to your test function and paste in the code from [this file]((https://github.com/openai/openai-cookbook/blob/main/examples/chatgpt/sharepoint_azure_function/solution_two_preprocessing.js)). Save the function.\n", + "\n", + "> **This code is meant to be directional** - while it should work out of the box, it is designed to be customized to your needs (see examples towards the end of this document).\n", + "\n", + "3. Set up the following env variables by going to the **Configuration** tab on the left under **Settings.** Note that this may be listed directly in **Environment Variables** depending on your Azure UI.\n", + "\n", + " 1. `TENANT_ID`: copied from previous section\n", + "\n", + " 2. `CLIENT_ID`: copied from previous section \n", + "\n", + " 3. _Solution 2 only:_\n", + "\n", + " 1. `OPENAI_API_KEY:` spin up an OpenAI API key on platform.openai.com.\n", + "\n", + "4. Go to the **Console** tab under the **Development Tools**\n", + "\n", + " 1. Install the following packages in console\n", + "\n", + " 1. `npm install @microsoft/microsoft-graph-client`\n", + "\n", + " 2. `npm install axios`\n", + "\n", + " 3. _Solution 2 only:_\n", + "\n", + " 1. `npm install pdf-parse`\n", + "\n", + " 2. `npm install openai`\n", + "\n", + "5. Once this is complete, try calling the function (POST call) from Postman again, putting the below into body (using a query and search term you think will generate responses).\n", + "\n", + " ```json\n", + " {\n", + " \"query\": \"\",\n", + " \"searchTerm\": \"\"\n", + " }\n", + " ```\n", + "\n", + "6. If you get a response, you are ready to set this up with a Custom GPT!\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Detailed Walkthrough" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The below walks through setup instructions and walkthrough unique to this solution of pre-processing the files and extracting summaries in the Azure Function. You can find the entire code [here](https://github.com/openai/openai-cookbook/blob/main/examples/chatgpt/sharepoint_azure_function/solution_two_preprocessing.js).\n", + "\n", + "### Code Walkthrough\n", + "\n", + "#### Implementing the Authentication \n", + "\n", + "This solution follows the same authentication steps as solution 1 above - see [Initializing the Microsoft Graph Client](#initializing-the-microsoft-graph-client) and [Obtaining an On-Behalf-Of (OBO) Token](#obtaining-an-on-behalf-of-obo-token) sections.\n", + "\n", + "\n", + "#### Retrieving Content from O365 / SharePoint Items\n", + "\n", + "This function fetches the content of drive items, handling different file types and converting files to PDF when necessary for text extraction. This uses the [download endpoint](https://learn.microsoft.com/en-us/graph/api/driveitem-get-content?view=graph-rest-1.0\\&tabs=http) for PDFs and the [convert endpoint](https://learn.microsoft.com/en-us/graph/api/driveitem-get-content-format?view=graph-rest-1.0\\&tabs=http) for other supported file types.\n", + "```javascript\n", + "const getDriveItemContent = async (client, driveId, itemId, name) => {\n", + " try {\n", + " const fileType = path.extname(name).toLowerCase();\n", + " // the below files types are the ones that are able to be converted to PDF to extract the text. See https://learn.microsoft.com/en-us/graph/api/driveitem-get-content-format?view=graph-rest-1.0&tabs=http\n", + " const allowedFileTypes = ['.pdf', '.doc', '.docx', '.odp', '.ods', '.odt', '.pot', '.potm', '.potx', '.pps', '.ppsx', '.ppsxm', '.ppt', '.pptm', '.pptx', '.rtf'];\n", + " // filePath changes based on file type, adding ?format=pdf to convert non-pdf types to pdf for text extraction, so all files in allowedFileTypes above are converted to pdf\n", + " const filePath = `/drives/${driveId}/items/${itemId}/content` + ((fileType === '.pdf' || fileType === '.txt' || fileType === '.csv') ? '' : '?format=pdf');\n", + " if (allowedFileTypes.includes(fileType)) {\n", + " response = await client.api(filePath).getStream();\n", + " // The below takes the chunks in response and combines\n", + " let chunks = [];\n", + " for await (let chunk of response) {\n", + " chunks.push(chunk);\n", + " }\n", + " let buffer = Buffer.concat(chunks);\n", + " // the below extracts the text from the PDF.\n", + " const pdfContents = await pdfParse(buffer);\n", + " return pdfContents.text;\n", + " } else if (fileType === '.txt') {\n", + " // If the type is txt, it does not need to create a stream and instead just grabs the content\n", + " response = await client.api(filePath).get();\n", + " return response;\n", + " } else if (fileType === '.csv') {\n", + " response = await client.api(filePath).getStream();\n", + " let chunks = [];\n", + " for await (let chunk of response) {\n", + " chunks.push(chunk);\n", + " }\n", + " let buffer = Buffer.concat(chunks);\n", + " let dataString = buffer.toString('utf-8');\n", + " return dataString\n", + " \n", + " } else {\n", + " return 'Unsupported File Type';\n", + " }\n", + " \n", + " } catch (error) {\n", + " console.error('Error fetching drive content:', error);\n", + " throw new Error(`Failed to fetch content for ${name}: ${error.message}`);\n", + " }\n", + "};\n", + "```\n", + "\n", + "#### Integrating GPT 4o mini for Text Analysis\n", + "\n", + "This function utilizes the OpenAI SDK to analyze text extracted from documents and find relevant information based on a user query. This helps to ensure only relevant text to the user’s question is returned to the GPT. \n", + "\n", + "```javascript\n", + "const getRelevantParts = async (text, query) => {\n", + " try {\n", + " // We use your OpenAI key to initialize the OpenAI client\n", + " const openAIKey = process.env[\"OPENAI_API_KEY\"];\n", + " const openai = new OpenAI({\n", + " apiKey: openAIKey,\n", + " });\n", + " const response = await openai.chat.completions.create({\n", + " // Using gpt-4o-mini due to speed to prevent timeouts. You can tweak this prompt as needed\n", + " model: \"gpt-4o-mini\",\n", + " messages: [\n", + " {\"role\": \"system\", \"content\": \"You are a helpful assistant that finds relevant content in text based on a query. You only return the relevant sentences, and you return a maximum of 10 sentences\"},\n", + " {\"role\": \"user\", \"content\": `Based on this question: **\"${query}\"**, get the relevant parts from the following text:*****\\n\\n${text}*****. If you cannot answer the question based on the text, respond with 'No information provided'`}\n", + " ],\n", + " // using temperature of 0 since we want to just extract the relevant content\n", + " temperature: 0,\n", + " // using max_tokens of 1000, but you can customize this based on the number of documents you are searching. \n", + " max_tokens: 1000\n", + " });\n", + " return response.choices[0].message.content;\n", + " } catch (error) {\n", + " console.error('Error with OpenAI:', error);\n", + " return 'Error processing text with OpenAI' + error;\n", + " }\n", + "};\n", + "```\n", + "\n", + "#### Creating the Azure Function to Handle Requests\n", + "\n", + "Now that we have all these helper functions, the Azure Function will orchestrate the flow, by authenticating the user, performing the search, and iterating through the search results to extract the text and retrieve the relevant parts of the text to the GPT.\n", + "\n", + "**Handling HTTP Requests:** The function starts by extracting the query and searchTerm from the HTTP request. It checks if the Authorization header is present and extracts the bearer token.\n", + "\n", + "**Authentication:** Using the bearer token, it obtains an OBO token from Microsoft's identity platform using getOboToken defined above.\n", + "\n", + "**Initializing the Graph Client:** With the OBO token, it initializes the Microsoft Graph client using initGraphClient defined above.\n", + "\n", + "**Document Search:** It constructs a search query and sends it to the Microsoft Graph API to find documents based on the searchTerm.\n", + "\n", + "**Document Processing**: For each document returned by the search:\n", + "\n", + "- It retrieves the document content using getDriveItemContent.\n", + "\n", + "- If the file type is supported, it analyzes the content using getRelevantParts, which sends the text to OpenAI's model for extracting relevant information based on the query.\n", + "\n", + "- It collects the analysis results and includes metadata like the document name and URL.\n", + "\n", + "**Response**: The function sorts the results by relevance and sends them back in the HTTP response.\n", + "\n", + "```javascript\n", + "module.exports = async function (context, req) {\n", + " const query = req.query.query || (req.body && req.body.query);\n", + " const searchTerm = req.query.searchTerm || (req.body && req.body.searchTerm);\n", + " if (!req.headers.authorization) {\n", + " context.res = {\n", + " status: 400,\n", + " body: 'Authorization header is missing'\n", + " };\n", + " return;\n", + " }\n", + " /// The below takes the token passed to the function, to use to get an OBO token.\n", + " const bearerToken = req.headers.authorization.split(' ')[1];\n", + " let accessToken;\n", + " try {\n", + " accessToken = await getOboToken(bearerToken);\n", + " } catch (error) {\n", + " context.res = {\n", + " status: 500,\n", + " body: `Failed to obtain OBO token: ${error.message}`\n", + " };\n", + " return;\n", + " }\n", + " // Initialize the Graph Client using the initGraphClient function defined above\n", + " let client = initGraphClient(accessToken);\n", + " // this is the search body to be used in the Microsft Graph Search API: https://learn.microsoft.com/en-us/graph/search-concept-files\n", + " const requestBody = {\n", + " requests: [\n", + " {\n", + " entityTypes: ['driveItem'],\n", + " query: {\n", + " queryString: searchTerm\n", + " },\n", + " from: 0,\n", + " // the below is set to summarize the top 10 search results from the Graph API, but can configure based on your documents. \n", + " size: 10\n", + " }\n", + " ]\n", + " };\n", + "\n", + " try { \n", + " // Function to tokenize content (e.g., based on words). \n", + " const tokenizeContent = (content) => {\n", + " return content.split(/\\s+/);\n", + " };\n", + "\n", + " // Function to break tokens into 10k token windows for gpt-4o-mini\n", + " const breakIntoTokenWindows = (tokens) => {\n", + " const tokenWindows = []\n", + " const maxWindowTokens = 10000; // 10k tokens\n", + " let startIndex = 0;\n", + "\n", + " while (startIndex < tokens.length) {\n", + " const window = tokens.slice(startIndex, startIndex + maxWindowTokens);\n", + " tokenWindows.push(window);\n", + " startIndex += maxWindowTokens;\n", + " }\n", + "\n", + " return tokenWindows;\n", + " };\n", + " // This is where we are doing the search\n", + " const list = await client.api('/search/query').post(requestBody);\n", + "\n", + " const processList = async () => {\n", + " // This will go through and for each search response, grab the contents of the file and summarize with gpt-4o-mini\n", + " const results = [];\n", + "\n", + " await Promise.all(list.value[0].hitsContainers.map(async (container) => {\n", + " for (const hit of container.hits) {\n", + " if (hit.resource[\"@odata.type\"] === \"#microsoft.graph.driveItem\") {\n", + " const { name, id } = hit.resource;\n", + " // We use the below to grab the URL of the file to include in the response\n", + " const webUrl = hit.resource.webUrl.replace(/\\s/g, \"%20\");\n", + " // The Microsoft Graph API ranks the reponses, so we use this to order it\n", + " const rank = hit.rank;\n", + " // The below is where the file lives\n", + " const driveId = hit.resource.parentReference.driveId;\n", + " const contents = await getDriveItemContent(client, driveId, id, name);\n", + " if (contents !== 'Unsupported File Type') {\n", + " // Tokenize content using function defined previously\n", + " const tokens = tokenizeContent(contents);\n", + "\n", + " // Break tokens into 10k token windows\n", + " const tokenWindows = breakIntoTokenWindows(tokens);\n", + "\n", + " // Process each token window and combine results\n", + " const relevantPartsPromises = tokenWindows.map(window => getRelevantParts(window.join(' '), query));\n", + " const relevantParts = await Promise.all(relevantPartsPromises);\n", + " const combinedResults = relevantParts.join('\\n'); // Combine results\n", + "\n", + " results.push({ name, webUrl, rank, contents: combinedResults });\n", + " } \n", + " else {\n", + " results.push({ name, webUrl, rank, contents: 'Unsupported File Type' });\n", + " }\n", + " }\n", + " }\n", + " }));\n", + "\n", + " return results;\n", + " };\n", + " let results;\n", + " if (list.value[0].hitsContainers[0].total == 0) {\n", + " // Return no results found to the API if the Microsoft Graph API returns no results\n", + " results = 'No results found';\n", + " } else {\n", + " // If the Microsoft Graph API does return results, then run processList to iterate through.\n", + " results = await processList();\n", + " results.sort((a, b) => a.rank - b.rank);\n", + " }\n", + " context.res = {\n", + " status: 200,\n", + " body: results\n", + " };\n", + " } catch (error) {\n", + " context.res = {\n", + " status: 500,\n", + " body: `Error performing search or processing results: ${error.message}`,\n", + " };\n", + " }\n", + "};\n", + "```\n", + "\n", + "### Customizations\n", + "\n", + "Below are some potential areas to customize. \n", + "\n", + "- You can customize the GPT prompt to search again a certain amount of times if nothing is found.\n", + "\n", + "- You can customize the code to only search through specific SharePoint sites or O365 Drives by customizing the search query. This will help focus the search and improve the retrieval. The function as setup now looks through all files the logged-in user can access.\n", + "\n", + "- You could use gpt-4o instead of gpt-4o-mini. This would slightly increase the cost and latency, but you may get higher quality summarizations.\n", + "\n", + "- You can customize the amount of files it searches through within the call to Microsoft Graph.\n", + "\n", + "\n", + "### Considerations\n", + "\n", + "Note that all the same limitations of Actions apply here, with regards to returning 100K characters or less and the [45 second timeout](https://platform.openai.com/docs/actions/production/timeouts).\n", + "\n", + "\n", + "- This only works for text, not for images. With some additional code in the Azure Function, you could customize this by using GPT-4o to extract summarizations of images.\n", + "\n", + "- This does not work for structured data. We recommend Solution 1 if structured data is a major part of your use case." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## ChatGPT Steps" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Custom GPT Instructions " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Once you've created a Custom GPT, copy the text below in the Instructions panel. Have questions? Check out [Getting Started Example](https://platform.openai.com/docs/actions/getting-started) to see how this step works in more detail." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "vscode": { + "languageId": "plaintext" + } + }, + "outputs": [], + "source": [ + "You are a Q&A helper that helps answer users questions. You have access to a documents repository through your API action. When a user asks a question, you pass in that question exactly as stated to the \"query\" parameter, and for the \"searchTerm\" you use a single keyword or term you think you should use for the search.\n", + "\n", + "****\n", + "\n", + "Scenario 1: There are answers\n", + "\n", + "If your action returns results, then you take the results from the action and summarize concisely with the webUrl returned from the action. You answer the users question to the best of your knowledge from the action\n", + "\n", + "****\n", + "\n", + "Scenario 2: No results found\n", + "\n", + "If the response you get from the action is \"No results found\", stop there and let the user know there were no results and that you are going to try a different search term, and explain why. You must always let the user know before conducting another search.\n", + "\n", + "Example:\n", + "\n", + "****\n", + "\n", + "I found no results for \"DEI\". I am now going to try [insert term] because [insert explanation]\n", + "\n", + "****\n", + "\n", + "Then, try a different searchTerm that is similar to the one you tried before, with a single word. \n", + "\n", + "Try this three times. After the third time, then let the user know you did not find any relevant documents to answer the question, and to check SharePoint. Be sure to be explicit about what you are searching for at each step.\n", + "\n", + "****\n", + "\n", + "In either scenario, try to answer the user's question. If you cannot answer the user's question based on the knowledge you find, let the user know and ask them to go check the HR Docs in SharePoint. If the file is a CSV, XLSX, or XLS, you can tell the user to download the file using the link and re-upload to use Advanced Data Analysis." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### OpenAPI Schema " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Once you've created a Custom GPT, copy the text below in the Actions panel. Have questions? Check out [Getting Started Example](https://platform.openai.com/docs/actions/getting-started) to see how this step works in more detail." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The below spec passes in the `query` parameter to inform the pre-processing and a `searchTerm` to find the right files in Microsoft Graph.\n", + ">Make sure to switch the function app name, function name and code based on link copied in screenshot above" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "vscode": { + "languageId": "yaml" + } + }, + "outputs": [], + "source": [ + "openapi: 3.1.0\n", + "info:\n", + " title: SharePoint Search API\n", + " description: API for searching SharePoint documents.\n", + " version: 1.0.0\n", + "servers:\n", + " - url: https://{your_function_app_name}.azurewebsites.net/api\n", + " description: SharePoint Search API server\n", + "paths:\n", + " /{your_function_name}?code={enter your specific endpoint id here}:\n", + " post:\n", + " operationId: searchSharePoint\n", + " summary: Searches SharePoint for documents matching a query and term.\n", + " requestBody:\n", + " required: true\n", + " content:\n", + " application/json:\n", + " schema:\n", + " type: object\n", + " properties:\n", + " query:\n", + " type: string\n", + " description: The full query to search for in SharePoint documents.\n", + " searchTerm:\n", + " type: string\n", + " description: A specific term to search for within the documents.\n", + " responses:\n", + " '200':\n", + " description: Search results\n", + " content:\n", + " application/json:\n", + " schema:\n", + " type: array\n", + " items:\n", + " type: object\n", + " properties:\n", + " documentName:\n", + " type: string\n", + " description: The name of the document.\n", + " snippet:\n", + " type: string\n", + " description: A snippet from the document containing the search term.\n", + " url:\n", + " type: string\n", + " description: The URL to access the document." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Authentication Instructions" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Below are instructions on setting up authentication with this 3rd party application. Have questions? Check out [Getting Started Example](https://platform.openai.com/docs/actions/getting-started) to see how this step works in more detail." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "*See above and on the [Azure Function cookbook](https://cookbook.openai.com/examples/chatgpt/gpt_actions_library/gpt_middleware_azure_function) for more detailed instructions on authentication.*" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## FAQ & Troubleshooting" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "- Why are you using the Microsoft Graph API in your code instead of the [SharePoint API](https://learn.microsoft.com/en-us/sharepoint/dev/sp-add-ins/get-to-know-the-sharepoint-rest-service?tabs=csom)?\n", + "\n", + " - The SharePoint API is legacy - per the Microsoft documentation [here](https://learn.microsoft.com/en-us/sharepoint/dev/apis/sharepoint-rest-graph), “For SharePoint Online, innovation using a REST API against SharePoint is driven via the Microsoft Graph REST API's.” The Graph API gives us more flexibility, and the SharePoint API still runs into the same file issues listed in the [Why is this necessary instead of interacting with the Microsoft Graph API directly?](#why-is-this-necessary-instead-of-interacting-with-the-microsoft-api-directly) section.\n", + "\n", + "- What types of files does this support?\n", + " 1. This supports all files listed in the documentation for the Convert File endpoint [_here_](https://learn.microsoft.com/en-us/graph/api/driveitem-get-content-format?view=graph-rest-1.0\\&tabs=http). Specifically, it supports _pdf, doc, docx, odp, ods, odt, pot, potm, potx, pps, ppsx, ppsxm, ppt, pptm, pptx, rtf_.\n", + "\n", + " 2. When a search result returns XLS, XLSX, or CSV, this prompts the user to download the file and re-upload to ask questions using Advanced Data Analysis. As stated above, we recommend solution 1 if structured data is part of your use case.\n", + "\n", + "- Why do I need to request an OBO token?\n", + "\n", + " - When you try to use the same token to authenticate to the Graph API as the one you use to authenticate into the Azure Function, you get an “invalid audience” token. This is because the audience for the token can only be user\\_impersonation.\n", + "\n", + " - To address this, the function requests a new token scoped to Files.Read.All within the app using the [On Behalf Of flow](https://learn.microsoft.com/en-us/entra/identity-platform/v2-oauth2-on-behalf-of-flow). This will inherit the permissions of the logged in user, meaning this function will only search through files the logged-in user has access to. \n", + "\n", + " - We are purposefully requesting a new On Behalf Of token with each request, because Azure Function Apps are meant to be stateless. You could potentially integrate this with Azure Key Vault to store the secret and retrieve programmatically. " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "*Are there integrations that you’d like us to prioritize? Are there errors in our integrations? File a PR or issue in our github, and we’ll take a look.*\n" + ] + } + ], + "metadata": { + "language_info": { + "name": "python" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/examples/chatgpt/gpt_actions_library/gpt_middleware_azure_function.ipynb b/examples/chatgpt/gpt_actions_library/gpt_middleware_azure_function.ipynb new file mode 100644 index 0000000..4236ccc --- /dev/null +++ b/examples/chatgpt/gpt_actions_library/gpt_middleware_azure_function.ipynb @@ -0,0 +1,485 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# GPT Action Library (Middleware): Azure Function" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Introduction" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This page provides an instruction & guide for developers building middleware to connect a GPT Action to a specific application. Before you proceed, make sure to first familiarize yourself with the following information: \n", + "- [Introduction to GPT Actions](https://platform.openai.com/docs/actions)\n", + "- [Introduction to GPT Actions Library](https://platform.openai.com/docs/actions/actions-library)\n", + "- [Example of Building a GPT Action from Scratch](https://platform.openai.com/docs/actions/getting-started)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This particular GPT Action provides an overview of how to build an **Azure Function**, MSFT's cloud-based function builder. This documentation helps a user set up an OAuth-protected Azure Function to connect to a GPT Action, and to a sample application. " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Value + Example Business Use Cases" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "**Value**: Users can now leverage ChatGPT's natural language capability to connect directly to Azure Function. This can in a few ways:\n", + "\n", + "- 100k character limit in GPT Actions: users can use the middleware to pre-process the text response from an API. For example, you can use OpenAI’s API in the middleware to summarize the text before sending it back to ChatGPT.\n", + "- Typically for actions, users are relying on the SaaS API to return text. You can convert the response for the vendor API into easily digestible text, and it can handle different data types such as structured and unstructured data.\n", + "- It can return files instead of just text. This can be useful to surface CSV files for Data Analysis, or bring back an PDF file and ChatGPT will treat it like an upload. \n", + "\n", + "\n", + "**Example Use Cases**: \n", + "- A user needs to look up files in Sharepoint, but needs a middleware app between ChatGPT and Sharepoint\n", + "- A user has built several steps in a row in an Azure function, and needs to be able to kick off that process using ChatGPT" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Application Information" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Application Key Links" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Check out these links from the application before you get started:\n", + "- Application Website: https://learn.microsoft.com/en-us/azure/azure-functions/\n", + "- Application API Documentation: https://learn.microsoft.com/en-us/azure/azure-functions/functions-reference/" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Application Prerequisites" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Before you get started, make sure you go through the following steps in your application environment:\n", + "- Azure Portal with access to create Azure Function Apps and Azure Entra App Registrations" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Application Setup" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Installing the app" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "You can read more about languages and deployment options for Azure Functions on the left hand side of the documentation [here](https://learn.microsoft.com/en-us/azure/azure-functions/functions-overview?pivots=programming-language-csharp). " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Option 1: Use VSCode\n", + "\n", + "See Microsoft’s documentation [here](https://learn.microsoft.com/en-us/azure/azure-functions/functions-develop-vs-code?tabs=node-v4,python-v2,isolated-process\\&pivots=programming-language-javascript) for how to deploy using VSCode. If you have familiarity with this approach, feel free to use it. \n", + "\n", + "\n", + "#### Option 2: Directly in Azure Portal\n", + "\n", + "See the documentation [here](https://learn.microsoft.com/en-us/azure/azure-functions/functions-create-function-app-portal?pivots=programming-language-javascript) for how to deploy using the Azure portal. We’ll walk through an example here step by step.\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "##### Part 1: Create Function" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![](../../../images/create_function_app.png)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "1. Create an [Azure Function app](https://learn.microsoft.com/en-us/azure/azure-functions/functions-overview?pivots=programming-language-csharp). I used the following settings but you can use anything you are comfortable with. Note that not every language / operating system allows for editing the functions in the console directly - the combination I chose below does. For my walkthrough, I left everything as default and made the selections below. The below settings work out of the box for the SharePoint Node.js solutions [here](https://cookbook.openai.com/examples/chatgpt/gpt_actions_library/gpt_action_sharepoint_doc) and [here](https://cookbook.openai.com/examples/chatgpt/gpt_actions_library/gpt_action_sharepoint_text). \n", + "\n", + " 1. Basics\n", + "\n", + " 1. _Do you want to deploy code or container image?:_  **Code**\n", + "\n", + " 2. _Runtime stack:_ **Node.js**\n", + "\n", + " 3. _Operating system:_ **Windows**\n", + "\n", + " 2. Networking\n", + "\n", + " 1. _Enable public access_: **on (need this on to connect to the GPT)**\n", + "\n", + "2. After completing the above, you’ll land on the “Deployments” page. Once the deployment completes (which should only take a few minutes) click on **“Go to Resource”** to go back to the Function App\n", + "\n", + " > You may get an error the first time you attempt this, click create again and it will likely work. " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "##### Part 2: Set up Auth" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "3. On the left-hand side menu of the Azure Function App, click on **Authentication** under the **Settings** menu. \n", + "\n", + " 1. Add identity provider\n", + "\n", + " 2. Select **Microsoft** as identity provider. \n", + "\n", + " 3. **Workforce** as tenant type\n", + "\n", + " 4. **Create a new application.** The instructions are fairly similar if you are using an existing application, but it is easier to create a new application as it will have the callback URLs and the API exposed automatically using “Easy Auth”. You can read more about that [**here**](https://learn.microsoft.com/en-us/azure/app-service/overview-authentication-authorization).\n", + "\n", + " 5. Leave all the other settings on this page as the default, but feel free to change based on your internal guidelines.\n", + "\n", + " 6. On the **permissions** tab, click **Add Permission** and add **Files.Read.All** and **Sites.ReadAll**, then **Add.** This allows this application to read files which is important in order to use the Microsoft Graph Search API. If you are not using this for the SharePoint solution [here](https://cookbook.openai.com/examples/chatgpt/gpt_actions_library/gpt_action_sharepoint_doc) and [here](https://cookbook.openai.com/examples/chatgpt/gpt_actions_library/gpt_action_sharepoint_text) you can skip this.\n", + "\n", + "4. Once it is created, **click on the enterprise application you just created** (so, leave the Function App page and land on the Enterprise Application that you just spun up)**.** We are now going to give it one more permission, to execute the Azure Function by impersonating the user logging into the application. See [here](https://learn.microsoft.com/en-us/azure/app-service/configure-authentication-provider-aad?tabs=workforce-tenant) for more details.\n", + "\n", + " 1. On the main page, click “**View API Permissions”**\n", + "\n", + " 2. Search for **Microsoft Azure App Service** in the **APIs my organization uses** and find **user\\_impersonation** \n", + "\n", + " 3. Add it, then you’ll need an Admin on Azure Portal to **Grant Admin Consent.**\n", + "\n", + "5) **Within that enterprise application**, Click on **“Expose an API”** on the left hand menu under **Manage,** then copy the **scope** that was created using the **Copy to Clipboard** button. The scope should look like “api://\\/user\\_impersonation”. **Save this for later as** `SCOPE`**.**\n", + "\n", + "6) Click on **“Authentication”** on the left hand menu under **Manage**\n", + "\n", + " 1. Under the **Web** section, you’ll notice one callback URI was added automatically. Add the Postman redirect URI () for testing.\n", + "\n", + "7) On the left-hand side, go to **Overview**. Copy the **application (client) ID** and and the **directory (tenant) ID** and **save for later as** `CLIENT_ID` **and** `TENANT_ID`**.**" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "##### Part 3: Set up Test Function" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "8. Leave the page by going home and then back to your **Function App.**\n", + "\n", + "9. Click on **Create Function.** For this example, I’m going to develop it in the portal, but you can also use VSCode or another IDE.\n", + "\n", + " 1. Choose **HTTP trigger**\n", + "\n", + " 2. For **Authorization Level,** you can choose any key type you want.\n", + "\n", + " 1. Note this may error out the first time, but it is likely the Function did create, do a refresh of the page to check.\n", + "\n", + "10. Click on the function you just created (You may need to click refresh to see it). Click on **Get Function URL** and save it to test in Postman. You will also use this when creating the OpenAPI spec later when you put it into the GPT. " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![](../../../images/get_function_url.png)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "11. Go back to the function app and click on **Configuration.** Show the value for the `MICROSOFT_PROVIDER_AUTHENTICATION_SECRET` variable, copy it (click advanced edit to copy it), and **save it for later.**  \n", + "\n", + "At this point, you should have a test function created, and you should have saved a **client id, tenant id, secret, scope, and function URL**. You are now ready to test out the authentication in Postman" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "##### Part 4: Test Authentication in Postman" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "12. Try to hit endpoint you created in Postman using those OAuth settings:\n", + "\n", + " 1. **Grant Type:** Authorization Code\n", + "\n", + " 2. **Auth URL**: https://login.microsoftonline.com/`TENANT_ID`/oauth2/v2.0/authorize\n", + "\n", + " 3. **Auth Token URL**: https://login.microsoftonline.com/`TENANT_ID`/oauth2/v2.0/token\n", + "\n", + " 4. **Client ID:** `CLIENT_ID` from step 7 above\n", + "\n", + " 5. **Client secret:** `MICROSOFT_PROVIDER_AUTHENTICATION_SECRET `from step 11 above\n", + "\n", + " 6. **Scope**: `SCOPE` from step 5 above\n", + "\n", + " 7. **Client credentials**: Send client credentials in body\n", + "\n", + "13. You will need to click **Get New Access Token**, and then hit the endpoint you saved in step 10 above. If it was successful, you should get this response: `”This HTTP triggered function executed successfully. Pass a name in the query string or in the request body for a personalized response.”`" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "##### Part 5: Set up your Application on an Azure Function" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This should be done separately and is specific to your app. See the [Sharepoint Cookbook]((https://cookbook.openai.com/examples/chatgpt/gpt_actions_library/gpt_action_sharepoint_doc)) for an example of that. " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "##### Part 6: Set up ChatGPT" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "14. Generate an OpenAPI spec for your endpoint. \n", + "\n", + "15. Paste that into the Actions section of a GPT, and choose OAuth as the authentication type. Fill out the OAuth settings the same way you did for Postman above. \n", + "\n", + "16. Once you save the action, you will see a callback URI at the bottom of the GPT configuration. Copy that URL, then go **back to your Function App in the Azure Portal**.\n", + "\n", + "17. Click on **Authentication** under **Settings**, then click on your Entra application.\n", + "\n", + "18. Once you are there, then click **Authentication** under the **Manage** section.\n", + "\n", + "19. Add a new Redirect URI under the **Web** section of that page, and paste in the Callback URI you got from step 16, then click Save. \n", + "\n", + "20. Test out the GPT and it should work as expected." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## ChatGPT Steps" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Custom GPT Instructions " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "*This is application specific. See [Sharepoint Cookbook]((https://cookbook.openai.com/examples/chatgpt/gpt_actions_library/gpt_action_sharepoint_doc)) for an example*" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### OpenAPI Schema " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Once you've created a Custom GPT, copy the text below in the Actions panel. Have questions? Check out [Getting Started Example](https://platform.openai.com/docs/actions/getting-started) to see how this step works in more detail." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Below is an example of what connecting to this Middlware might look like. You'll need to insert your application's & function's information in this section. " + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "vscode": { + "languageId": "yaml" + } + }, + "outputs": [], + "source": [ + "openapi: 3.1.0\n", + "info:\n", + " title: {insert title}\n", + " description: {insert description}\n", + " version: 1.0.0\n", + "servers:\n", + " - url: https://{your_function_app_name}.azurewebsites.net/api\n", + " description: {insert description}\n", + "paths:\n", + " /{your_function_name}?code={enter your specific endpoint id here}:\n", + " post:\n", + " operationId: {insert operationID}\n", + " summary: {insert summary}\n", + " requestBody: \n", + "{the rest of this is specific to your application}" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Authentication Instructions" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Below are instructions on setting up authentication with this 3rd party application. Have questions? Check out [Getting Started Example](https://platform.openai.com/docs/actions/getting-started) to see how this step works in more detail." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Pre-Action Steps" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Before you set up authentication in ChatGPT, please take the following steps in the application." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "*Follow steps 2 & 4 above to setting up authentication*" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### In ChatGPT" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "In ChatGPT, click on \"Authentication\" and choose **\"OAuth\"**. Enter in the information below. " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "- **Client ID**: *see step 12 above*\n", + "- **Client Secret**: *ditto*\n", + "- **Authorization URL**: *ditto*\n", + "- **Token URL**: *ditto*\n", + "- **Scope**: *ditto*\n", + "- **Token**: *ditto*" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Post-Action Steps" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Once you've set up authentication in ChatGPT, follow the steps below in the application to finalize the Action. " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "*See above for testing out this application*" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "*Are there integrations that you’d like us to prioritize? Are there errors in our integrations? File a PR or issue in our github, and we’ll take a look.*\n" + ] + } + ], + "metadata": { + "language_info": { + "name": "python" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/examples/chatgpt/sharepoint_azure_function/Using_Azure_Functions_and_Microsoft_Graph_to_Query_SharePoint.md b/examples/chatgpt/sharepoint_azure_function/Using_Azure_Functions_and_Microsoft_Graph_to_Query_SharePoint.md index d10ccf6..06980ff 100644 --- a/examples/chatgpt/sharepoint_azure_function/Using_Azure_Functions_and_Microsoft_Graph_to_Query_SharePoint.md +++ b/examples/chatgpt/sharepoint_azure_function/Using_Azure_Functions_and_Microsoft_Graph_to_Query_SharePoint.md @@ -578,7 +578,6 @@ paths: description: Payload too large if the response exceeds the size limit. '500': description: Server error when there are issues executing the query or encoding the results. - ``` ## Solution 2 Detailed Walkthrough: Converting the file to text in the Azure Function diff --git a/examples/chatgpt/sharepoint_azure_function/solution_two_preprocessing.js b/examples/chatgpt/sharepoint_azure_function/solution_two_preprocessing.js index f9db2d0..494b962 100644 --- a/examples/chatgpt/sharepoint_azure_function/solution_two_preprocessing.js +++ b/examples/chatgpt/sharepoint_azure_function/solution_two_preprocessing.js @@ -88,7 +88,7 @@ const getDriveItemContent = async (client, driveId, itemId, name) => { } }; -// Function to get relevant parts of text using gpt-3.5-turbo. +// Function to get relevant parts of text using got-4o-mini. const getRelevantParts = async (text, query) => { try { // We use your OpenAI key to initialize the OpenAI client @@ -97,8 +97,8 @@ const getRelevantParts = async (text, query) => { apiKey: openAIKey, }); const response = await openai.chat.completions.create({ - // Using gpt-3.5-turbo due to speed to prevent timeouts. You can tweak this prompt as needed - model: "gpt-3.5-turbo-0125", + // Using got-4o-mini due to speed to prevent timeouts. You can tweak this prompt as needed + model: "got-4o-mini", messages: [ {"role": "system", "content": "You are a helpful assistant that finds relevant content in text based on a query. You only return the relevant sentences, and you return a maximum of 10 sentences"}, {"role": "user", "content": `Based on this question: **"${query}"**, get the relevant parts from the following text:*****\n\n${text}*****. If you cannot answer the question based on the text, respond with 'No information provided'`} @@ -162,7 +162,7 @@ module.exports = async function (context, req) { return content.split(/\s+/); }; - // Function to break tokens into 10k token windows for gpt-3.5-turbo + // Function to break tokens into 10k token windows for got-4o-mini const breakIntoTokenWindows = (tokens) => { const tokenWindows = [] const maxWindowTokens = 10000; // 10k tokens @@ -180,7 +180,7 @@ module.exports = async function (context, req) { const list = await client.api('/search/query').post(requestBody); const processList = async () => { - // This will go through and for each search response, grab the contents of the file and summarize with gpt-3.5-turbo + // This will go through and for each search response, grab the contents of the file and summarize with got-4o-mini const results = []; await Promise.all(list.value[0].hitsContainers.map(async (container) => { diff --git a/images/solution_2_architecture.png b/images/solution_2_architecture.png index 689019657e03ad787bb9186c39a7d9427876d119..a4d860955cc8f9c13aacf7c1f8f08fe3de918d20 100644 GIT binary patch literal 198601 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%0Derp>fLcP3G6E6nbcQNEy_pPU z5s++bwNYKQSRg`CW4D!b_(4u2!$3~%=Kb4ZA9qGWX8)rU8(`bN(?{LNx%<+Bxxd28 zsLKY%76D_B(g1J&Z~V|(8!-2~Qg6JGlL-SGS~h^CK~4rW3Rn`94dMq(oItNQ1U|0I zAcAFw{2cTfM(d(Iza+*bMSg9L256=Bj2<77kiWs)-y+gD_<(KicAjm$mH~c*g^B~| z%P{0YAM@GQ4A?h=0VL126&fjdU*u$(a6wG0tMy6G2$2plzW>%^4Y<09ATH3a_WF$n zw}0vUZva*uVB7x@cV>$I96Mb?90?T>ZAO27`Gl0=E;81A113|q*pY*r47M6DPiO#U zl-~oSrhD^NE*l~uA1KbGy5TOW4M4izVa_UYvN625RKcL zn9B@xLNp)q#qG;JtTMOfux|*ipe5(Z0Fg>5tIK(KBSR^GE^GHsa77`#(UeCBNEd+E z_?TZlU_bzRL_wpppI@3~mMTLV_qySCn9*o~ToLz?@kVi$dgI z-wNe=`UDpt;1S=!Kx4lZ*@1L}CZeJrSTGNND|OABq}t+ti9#SH1H2WrP7op*EW~w< zCKFx4)jcnO%&d&>LfS?k@a|#x?Q86qG$OL-oG8NwyBR8P$lW0b{415%xDvu&Ae>VZ zkaz&{BsT@x8tTOM{U&Jm2u6FDZGd8?LiNX?H_p6jWaRve@a-TwCSq;r=**f8Z=wp+ zh(>>nmzzs}avTYgp}WB`wMfhY+)Tu9U!(Z#KU_GGUGfX?^R7dY0tK-7=HerPiGKqo z@h9mU`)h81D{2Y7#O5+Z3D*cTl}!q?%;gYKpXgsd9HiB`7F&OQ@5sgr);v#5vQb&_ zQQl|xiA^&n_*VO0y|$ zICrBM_)@b+!(JV`k&SKTB!9RbNw?AdbM|bjN&1on;9_z2u%pw&fDPeqNT<1;2{t(} zU~@al)yxN93tY9K1sd<$)icA8T81?65lKxY_<6Xj?B7;3Ty;>3C4mh6P%UCW12Xh! z_O1mzI+$gcZYC~L8G&7yAtX(BMj7(jra;x1B??!*De&3NeD(TcYyN>U!n#^Q}|FXJGODJb(Y40`92VJySG_=B_LfykLkqdi&%;` z2Ey;pkx|O+S%wb(JgB;?IT)DiH2R;56-`k?RkG2lanInX9ZniHYyYY&vUD#VvEm64 zHC17-Vg$aAh89>T{aGbs6lw!_J@7CL=Q&DVwN)PuiQbYHf2lNLU|brPmZ)MOKra%5dMqFkv-+1ngZpy8Yy4K}$HmbOfV4A*d|B1q}ReH9?_J5ZfQX;_q4p%eMLwu|$^$)|DmUxSWI4i$DUZ41Jph1hEFcPE{4X}R zq3}E!gv+48UC_&Dz{z?rKWNhCRcZQYHMS*+q~Wki953jG<{`gXm2mmEJ(EIoE{zh{#+fc=47uJs|b>5@%D*2S9>>ULvU(_-1y>r90zFY$mH< z;eR7RzpUasr^>77`H2HbTY+jI{Ut)ju!T_=t60@5UYQML&s`2aF_}aauo~c%Om4E? zn~qGTSdXtrHLtW{JJ3vy?s`#F ze2uxN^0;Tf!kNlAeekGU?y`{`|vWF&suuB$Q!26~djK!f}! z0;?z|`Ncu3$v@xKY90;tO z8IctPRY1ho(ALlhLzVYp!Mga(AjoQf8`<7Ld^XvZ&>T!FZM3L50-+Mp@ikqDoK605 z&JApZ@f-M>FQ1^_GI6M~H5WJ#Cl$3r=3Z|CKnz4g-Xu!>9^5A@PAbhAC<&fTOc;3o zvm@8@`A>i_2f3+B%uE5pGzcpqkUEcs=N*}+(upO)8Wzc<+9mm&C*oj4iw=OVe~r+{ zM0YyRu!Wo+Y*dq)!-^$!Em}kVA!wQ0kE@;!Z{-@w(`>(prdQxLMT3p~rn06%r66Fm+bKrdQ{aT*R_Av%XP;(bY-Q%i~tXB z2DGs&*&5O80!LFUQsk~F-~fYZxhCnak!&)r2Din~b5;dmbTrt>Z_Hoym(FwFdDIk$ zc`QPrZNWL`+`=*jC=SuMEuR^njC%g*+uV=Fe`9rRlFJduN)52rMf}1oe;l?J|NL>; zYkq9IQFMV?rJg{u#%{K#L(AZrd@m{!~Rb}j-cI4 z$^{0aD`=}($kFXGSE$!NrJ+(*q%8mB>TKWMWoyQ|){_^UaG^snrkz%%IJT4ArUW@@ zgF_20i>pc4R=h5u`=7!kp+kO|@?PTira4+T5h$^xHZFj{pDybXO}_>-`DW!hAG7mt%x zW-l{mhBL`|Cvtbd+}iahJ+KV)+LC;*&8BHptS-x4`)v$MKI}k~qq}GLm_7*H?BC1g8Wh~uFFH(i&|r5z%ibi^Zh1EX#UH>QKv?Ky&Ykz@ zuu~N0QaK)J=nn^HZC1pwt?6FqQ+r@{V@nw&`}7+=g9B4IALm228e^S-1qff7Vy*s* zr;m-I!hQQzN!d@Wq6dd+t)c;LoHj_E5OowUhz|nWu$NBQa%urR#~7rN9lp44^t8Na zW~-X!-G5Yl1Sf)Zeu#173tYA6^mtT|)R`+1WIAq0&A0yhlVPLBp#u*74=)|}w({Mc zglPQ`^OKr{e;a*R_ZmQp!5H)4Ngi!(AfPd2&l4W+#pY3&*ADi7U%T=nt7|N?G0tbx zD0?k@a?a#()fy}$>sB@{@hg~gK2eJAz3jH9mDl->AE`r6Cwu8vH%AevKEaH75%ZpE zmME(lY0Mm*!X#%8-_o+fmA)=!Cli1L_(RcQ@!Q6OZH)C!^Kk2{pHy$ZInRO0N!=gV zuMwvA_T#W0(kX5CE>Aph6g8o!jt!&Z@s5`jgunU4^BpRWfMgR`}`IV#HdBX30SRZHr?_#XK(qYgHd{}NVs{AP4DOTMSIWO2(0q^j4GIX z@>1JzPy&Ex(JsF-Lq&f^Vi+?={1Q5N6SC6_05@AwOZo2}a7PajZltM}#rh5oWKS|i z^>&*(dSW43xN0kklRclhxU`K>-CpChZOH`}DH;rYdq->Y1Ok5}>5X8mC`j1r@q z@}Z^j8`#lwtLT6thh#RTg6Dt3S$*a{!NTtxok8D|GEURzC+vR-(V?ex79pO%IxKhS z{sCo-8ux**vRJ?s6HSRKw8nsIFHObosq38foft7j6ljj``-@Q~0Y52-_nztvktogUr{$K+l9&`8<}ylBA)sft=t2pA9U`M5EILAzXsqkDc<~n&^E{*P9N?qAQskf$FdDOE!4>&$#VoyoE zhmJ7o6u+;SGQ)J9Ddrl5D01LH4kXsHl06vq8Z;@*?D3$>L9CUd4r#wKkMo01B2F%R zC;+0d(ZRjp?fOW;LfHz%_COSu*-uQ=3cd9+>lF{SnZBz&txUz}+mkk*4va`vJdHx> z5%n_p+82KLTWAlu91*1{Ge;tJ8`A@^?4^T`CTMGV%i)L`nZia^+rx!P*@|&H%u26Q zPC8fg0#il{_k&(R)7AaFky`jV2I-}nV&c{O5Ri|nD1gSFH5TX|V=7t*=+iEK^y53X zMZ`aqrMK=oc?( zy(xl!BvAEfL?z8x?1a?@OQL6uuc}pvKZmmRsk#=TNM_Uj_JqIzjVtXlrq=W`sE}C= zhGoA9cdtiMto!nDCsd~cJuAsTzCKOI26QeoOxC=}_tJE`Q zne+4AcBwIXdr+OZp!GvI@+$=f*Q50niL(aJdvSbjj@u;*PTOkRT)Xhs#Yxo~b$#L^ zM4iOs9=bjjHMaIVNgG}nq#JfSi52GFgVy_{g%>q0gS35n#(AGT(qbkp8<-N{yaibN zzvKpp_NV&zwX6s^CWS;+dKAHf9a#$EL0OJz6%*$09;|f|S(R^&|`xH-4 zQNPXRvJ4-O#B(!!NZX1&sb*%#XN$f6uvW~t*OR}mf_j{kGAntKbxu1VE7`61d}ZoL zYi{;5k1bN$0lhWx!xa?nP21JVCJGPAdF{?I*rKFw z4?EdKZ*Lz^Cte)h({j!r86^m=*`NK34%!(xZQtDx(aMz9d3*|O`bO#&Jjv%-62CV> za@u)oMPhy)V347ksGRv$xyotQ(qva**eY4Yge0tfUVm%^C-Z!+_O3`r zRlrdvK$f1cRj<_SFJuVyg|}jji7eN!depRgOMwaotmN%@UcIh6>@G?v@R_X27h@)3 zJX$&xc?xA-XJWMrK@m)BYvj~~<7}xDq{m(*wqKVyJO?~3H8YNUSEN^h=ze9;$?*P| zT4O&$8$U@(;u{`|F4k}uzSx%hp8PDWU7@(N+SWtQLm5u~qv6oc;_S!87|HJ=jy0Dh z$4jaVgW83~z$AhWfQJeH3ajF_>KCk^`(+LbNy8H1-JUi?A1mrOs1D1v!l!)XbciGS z_`LLoMYD1;mzWjB7P{{8B?3|Q1#2CCz!h#4bXxt|Az2%atWkQ?%Qf<2lT9#Pd zxaTf-x!Stq^eIuo7h;u-t_07cawf13}5sp$9r>pSE#B2iy2mfz_67i0bz8kr~C2gw9bH<9tK%m<3r+*0_E#+XXcO^V#VI~HA3)-GruA<4MVn00Vb zg;D4#i;oRa{4+<4nlKZ8S>n*9^YNo74cIpppt220Ui&LF3~%?lqihY1#@&<^_u3L^ zDi@MjDj7Z`9(JEw+#N*#*g5+f#T`bBb3;rrgD_GUKWAbvijyxg->vFTZFhUMK+-Ql zT$-HN_i-vqP7{8rT+bE}u8@z*CpYH&EuKDYJ8m&)oJ}X${qSz}V(x}qMS8nuv<~yu z1Uc~WPmJ|h)#!|qMLe2adOEe{Ka()!5y(BOS|_)!QB|*bZnSALHWn)vA>C0fi_au4 zQV4x@yKg8@zd8R5{^V+N_O_U0#|4(KehH1xX*5Zh4mMqVXSMEWEK3nxcOhqy-_(Z! zo;&n|{AG2X(MJxat)ZQPLDKz7pZ`!OL2S3=&~@S_?oJC>i6;~#$>|K0aGY$KHrzR! zl9~RnK?X0)Fui=f|I2(aX`wmVb%@Z@Q zAqV#v{3?XnjB-RE)z;@*c?o+hZq=V(j3{kSAV;9>Z}n;& ztF-L~ZsVbhi`$ooh9SX)h;VTz>spu(R&U%^@3NAu`KIM3gU`3GWF)lox33PZSZbKz zoc7DtIJsyC`1-g$rla#CGWxU4azE(8#MOnUyub<-9I{bk{xY^y=Q%5rV-^}$1$PPq^em$1f>$(_e+z8y8hcvJF)z8n7Ag}f zW>gyNqNF`%=cJaZ3ACN^_?P{~40Rj34RSAxr``EVw4lzJyVC6x3q4ep%YiF1{1;0> zwX|KBedGbeN=oZ)YrfO<0ovF)qbs;s!4_0ko@b4_o0x2TrScQir6S7o>mO9G6naL- z{DBHmPgqn}PgF{NOPocY8QdmX>isFF)NVxJ96seVCJp!vCGt3WTqu&4az51KW?Lc!VH-Y^;j?V?Iv3Dim^8(mVRn-OV^M=vbhap;sweA$><>RyHJ8O3j314{cK zdY1>4(~+9i6b2=4X1ZC!!h;IqTnYkeHV+V`ds=XSb+#+o`xIK9*q@6rddHe*PRq@t zOU*gQgzc%s&nJ*_g-cNDT|c&z<~Q~1YSNwuzP%Gp5t2&XUbAva^aq-A0x_blIz3xh z>sv8T7IJp(_84av>`56WT0zug48!4?IY}EQ$9$tJsxZg(f#0VVgTtgR9Gs)Xgw8|m zOjaFIY)Qo)S|4SiUah^~1F-DD`Y;nx85@~_bc^%19ky?M^)F;CmIVo>9i!Y;{|xpB z53#>#7sm?(8ofKLJ2J9qZwX1k%2JVLi0jve<^ zyh|R0I&VL# z7Be>(F+36?X>omJf4?mSEFi`~zyST`w~wd_g`_ zLoF%di7rZ~_H;?Q&Bw$qH=!A}2FN9(I%-iqV5^volcw$sv#gm+7us_eD!3zYR};@+ zrm>>0=T0fb6hJ2%ib&DFX!gv>KGV>iWU2n0=Q9lI3GJ;98q-O*&FUt(Y;ze#gc_c^ z)l^33u`ap&-BD)KF83^NeN+>ix{Voc!cfIZuz#qn7UvZ2W~nDB@jkI2)FSq6sd&nC zUiX8I0asf3b{K*7_V5De98ukLag|h@*?kAp+TzCHTnKhD*&`@4JcYhC9waE2KP$~*TV>-fe6z@Y2-#-#uw+v( zHKvQ*sA<=YU*LD))JaZs^!jFEx=X{KX%Gsxr+Jr1YuWSJ&FJT9?UbTdyexTqMqfkR zto!ul($D`@CF!I!eG)}-8mHOzMBsw$iYuIz%i?fXZl8G9Qj5W8|)u!co*eCF;$F$o1-^ z;ADFb&n3mIiY;|1oBGvV^B0UY5W9)AM~(}JUTde7iK7%(J!6e^mRY%DuKZE!_I;1W zkM`RI16p?4N#|hq^k7Eo_rn{p7g7%S$nYE#tnj80g(jQ%{<egi8- zmY&x=qD%OcxPoaS=u$E}*bf;8J$o2@l`X3YQ`K~x_Id_Z*w@k{VGjsv6I zHAn?qBh~>bCNe%dO6$E^!bJ<4Jw^0f0N0;X_woLYZR2u(doCQJAawR)zb3aaUJB}V zAb7>x?{X+3(P*<`bSm)URZD|k;w*+Bzsyp#6vaPr>{8jBzOq5}DB?|{Pgz3eRi!_n zk*{MnX-;N_f09{|3v1BICvIn+NziDK-TA)DdyIjg*IHGmGr)Zi)5o)((gJ!!|~RnCao1Zk*w|qoF2}rBQlp za$8roU*_@;1U#={cIx(cWdHRa+gFpWa_EB-XrR$Jft>mw6dtR7)P^9l=Ma=-8qCM?U5_a(moN&^mQkA=FM>0k1dB!-oQKb`mqCHRo5^F6jP zqhv<*cUuW(g+%N>axLRUtd0tl`VZXC6E^mklKIOMm!3chi9UQ??ZOOb@$Kt+T=V7= zdhBWQqJm?O1F7s`o${ZV{CQmwrofXPuB|^55V;r*xyyqdQtQluYGaCiXHVYWAfKiE zzWNtG7p3Bi(Li$jJ@wG{HX<1tzSEa$STh3hmvi}F^n9i$!Y)2^J(214=nOjjM$D07 zonT@W?L8a!jeM;dTlb4O>rmBw6lKKW4mv(Kiz?TL$cbH_K~aJpPB@U^^CRIC##;qV zpY3qyD`sDuqkrCo(4QwC zHogk=vbp!D-#A}LnU!b4=lLXr7jpI_8O@JALA@APKxeZJUu>QxryxY@H5LY0Gv>|h zS2i`hqN*&)Bz{&2b%Jm*7h(;buqsMR&=9k8tAlswmP?MZ4V75B=z+z*kfHh-K z5#(sp1vmJ$4_(?v_%|n~PTpFCX&$r@dwCqdBDJ30YjKU{^(sftRvkyiyooc3=Iv?5 zkdKJ3_!>{1cVt$Sm5`kck5lMBtB0qV3*_$dSPcqMF^v|*4L9mKw&;s7QFGVR zKwtVn-F9}3rt@v|%uEMMR%1cow1m76sMJkC^&1^ca>LRDn1#vH8n|YCHPHQbh>Hq2 zvMhk)J^Wg^j_WB+@B0P)k5F?)tbfyz(B)*Dhk0q*jDYeHfCJzT|L>_7XCUmi8Y%5Ptab7q<{vamHB?~HAT(>NdPikOW z(dsw*j-I^xZl|kD!nu6xgopb?LzGvljDu!ev3Ax*eE)#zyoG;NyBSCXK_e6>;du&^ zD{KUp=+^*}pIG8`yj!_G)LGwbTB)nYl4Ja%(wG<^kB^C{1iGh7)EA1*vd6Y!Wocv1 zH+1WMO%yNb6R^Q1eA;W-bf+Z#5lnGN+PrYd67!<8yCj{-@0IQMEexa`rMiy!qX)?= z;T7D2kMvvkbuWc}o{DY^4PE$Jn@_S9i>Rhvro`Wm$sdPX8mj47z}8Dw7lbpH!k`!e zE4pN)bHo=PbAp5vfWUjR?vf?g+_#2G>dGq5Ismuw5Hy? z0EC{rD%T;3>X#j5+_to*8|8OW0}17db(L&e_Dum&ZV4Z^IW(Rn#Vd~Bq0M{&h`P}` z@6xQisB^~VFN=e*J(t;;+TheDui`EDlQ77`VqR)<;hvEciUf11l4)|oUpmG=isn9j zzSL}7I>{+XvgJ3M0l_;=5KqW8hTS|R+3#T4Zw0@?*O5s*&L)62;(*w~_yu86I{~2m z({I)MzJW;-rY9RAk4RhzYA)n!x$_d4SyF9NYT=sq?Pp4@6g(~xOrk9pwzP}oIovl8 zooSCsJ!&GQq68d{2M`CBKBzjnUqPh`M#K$*!k2_DNo1Mp4>(HaTV!)ySo}04Yr5-!K` zAORmD?f!U}%>IzF#yngX&2Iy_yC607U;~nHkzyw?1_GyBRmTZ6lOjF3(O$eO(s!tw zNDTb`Lda`Pi!G823&ILE^jVDWo~6SNIFg$*-?SiRW-9^7(0*@k(KYSX1)Y`7r)?Qx zz5G9WRyRC=F?|iD!tLuO)61vbG@G#pj78N#tCv$fnA8-qApEj3Wv$q&)aFYv9u#fC z)+t=W2+T-d0GN?pro^p;247{dp_J)jjwn;AYXE&2ZRsqjaP%}ZFZe!V$Nkx^os!E~ z<{m8=N7Efg1Py-)?eTQCl_VZWPHhX88%+ymzb>I0zKS#E5(G0^12-o}Bd&%DI)RW! z_#+0@aQ)sB^}kgd-!auZ-W{*XTR>L&CfQid1ws5=s%1w}R%7GyUyr0|?)`%{+&1ev z%*%EUBwG`iGxs>DV4cpz&#_D7tw%a7ESpvJql8yiZ*D6L)JoH`*JLoq(tlLtA9n3u z7=C_y$=A{hE#{J)0#QMeBMprJ=g6waoc938?N#?vOmFK~|1~~=k2#I3uUL4~T<~At ze&O=Iza5?5vti$~Meb^ste)#N#;Z`FOUui4urzkTxnkrUtiR1H){kr-QD6sjs4;m9 zy3^C8sMqLxn{t=r7qvV5^4Tbho96rPetvLHW0d@;+dtm>wKq5VH9o{``XXg6->@h; zB{b;hd`;YI>6XEP59H_8VJG0BrGn_~U;y$55B4VG`#gABG>;R+<_eEyVxCqj94wHj z`*OY8s9fSOEe|X?GP1+OFD*0>bU*WZHKf}ZQa;*mb5>{ZdiXBsTU1=tHZw^o8HM@v z4)Tc@yglXLpCaIHkUg3yOpPs~zbOxM3a=b`~l1svtn8?7-d(#!bnvnEQ#?B3@&BTAY`A3UrQ&8J^+Ox3-o=1cF?WL&s%-qxRk5jV%**|u{ z$I@<~#J7C==>yK^l#kw{l!y&{B%i)b-86(ve|R$+!T5hn+a+v$BUKgU!xVCYQX3T& z;Jjb`PTAE8lDJX4dkohh>_;_#`DP=~6n$3oxcFYtd%(xVvXW(3lU0&wfl^aFNZmb~ z($4G5^O;u9z{>6Mw8o%m^IAMN>K(n_=QJH^?=i&r7<(h5XuO;#jx(M6MPGQPJHN*; zA3QV-n!0?6aO%8Bo=piixS*JTi?o(+2it@Qf@WLw1_P6d-On9rb`0yR6E_{d4GK-$ zB%5?5Bw7)yvbRr(?T<#jVD=K2S$!qgC2>5}2N{Y=W7a(&F#ykkkB9Vpy`1Hpbr#)1 z7B1l>tg25R89(jZ)Soz~5nA|g zn&7vGJDy7e`WL{8<-TL$*QB7sk~WXw80gAT7F{40vTJ`i?tE-`{(Z$IQ^5hz>S7F^ z%%Fe&@#W65BC9$)i15s&&kx7U*fh&7W%aDfj}ZHmv+sw_l`GmH%*+X6S)I*4?~0}n zk)K*utDrjjRp%4KS!-3#)l&|?NydYGcDJ*|6t1s-;`y@mzB^0N1m+IfW-QL4&Jaqm zUeiU31aqR2Y)aL+fZHZ?hPl0=ZlK1M?%DImXcB^qA;vzA1AM+sCyuzpt&2t2wp4XQ@~Ilhpv_O^x)f% zs#=_m+bYJHd(O>~{Fmr}%oWfa)Ib2I(R$z0EtjD^Co}i~|2W}9{!K%!SU4?~exNbv z0^)-ra!MMX)~RqqAjv?1> zGfr6CBTe-@{J34Et(}Qxww~Wn#5dM?m)LMqqXoV zs)@}`Y-{0wriN-hlGTd>QZ|U7LuS0K1&qG>uNTWPIHknpz3X=Nm^^9CJCUo3e^}(Q zF(so^6F+Xfd9Gy}8-}aupo!ibzv~I{%H6IUzPUgB?rOF?R;tfe7yNPbP7|ZKa*2X5 zyLFu#>@1af2~?*c;}3%mWjnPazSNIx*rC6Nm%#h$jX_D+Ktt#A-bgvIovEV6&4#h< zp>~odhc7lW`guY@8ADMQ74)l#z`bO#VQm79S1vJHoU~XTd7|^7RH*nFoMuaKONS>? zX|!AUovBuCY3bLuZcJYK7}KTmPm)QNZ@LD!SkI2$N<93ioN}ZVq1O_CJ|CX14Hd!b&yfVkxsEK=aEi^oYiu`d^9FY*jnp;03%+)A)*c4OAC+xcZ!*9k1o{?u^9hJe*zFD+4T{Dr4t@@X?5 z0^?tQ|60tM71TRGr^Gun7U&W`Z^ty9*J|=|fdhkga3ugArJEt{=+gUO-YL@6T3Mi} z3Y|MMIdjUDyReR_^#nCY2S*>8+EZ-}A8ZShWAbcLQ{IiKANYR4`7dXX!Nl?es#0nT z83cbz0kYlaPn&S19SB2qDk{Cf!Q9iCnJTZqFvyU@vM4g}0Y>?6;XB?{kZDqZ6_rYX zvel@Ed!MdDtaHxy_2K7FuKIgz(=6i|>9-qngLk9P!Y~}3n5k{F!Yn4{T>NG+)Y|Qf ztz4~r@iM){DHf%$Q>l;5&|7g{1HVh3n)IO>=}7;y(t99B2fv}{7L&gNI4^jt4jRu&q5XYRIz3FrGC5(p$|Axx3|v~e3ENqB z14E(!@vC{cLE~LA@*|6%W$nktl`G-g`n_u)fX$A{3b0ylyto~j>6m$!#k7?tWvRjcZPsgtHd>T1exh_>>~sDy<@7|IO7V_M(oW&$fASo22&Xo_|FWBW^pi5jMQBB%MIz#- zk?_w8$jgEPcDP>|I1GEL{~m_i`W0$TCvE{2-dyr{UV@jjpkX+M3>(AJXX4>N{t6S6 zb>sSr690xNB~F*ewulAS_(Mz`YH`(LW#OE(p3gbFB9$?`@;qr@)}gbDT^2^M_{T~K zmqNUIo1b`vTu*=Y30S>iZP@Fd_UzWTZ(g}B?VRqT$V-T--2Idz0?U@=d4vSje9jhb zRw+eBksGel&Z@^o)qzd^Vn>B-xhcGph~5ts$6<)CIq8&N+#@qqXO4bWdreV_xlvxg znw~dXt;*Qf7S}<3{rc7fDqDVXyH73}-_t$lL)!&_G8FZEi8ISc9nl7?RM(d2 zwCj3WZgr=3x5kqLP))l#VXvL<)sX2qg#W1OS|1WoqTN%**y&NFtXSVKUSBw=yM5!^ ziqTskyQ8c|)*Qd24{U9I2D=MSJuFAbc=}S7OpZ_pQQ?HOAd~3WDrE^F^A1-Q*PlHm z6IJf#uB^hBZWqTqFL!NcdL{b~4jKDnuBPkSxD8x9b{T=)Nki5*@r^Bo!iCG8O=Sj+ zAAQFJIFd5`1j;Iq7nD_|-}>67hfUF+Q@>uAusm?`ft+mYXEk5!xC1uGSDAOp&tDxK z7Q-u+`+}AR`_PZx zSFsj~54&V3irRBlQ-E|LC_!a4vy=R8h0v1 zv0l%k+ZcKO#;3q%>5&B@1{{MiBx^N_!d{o*M$;w}+7Gt9XuV6(=g&8Mjt0>SwGuMz z?wjpJJl-R3kB2}-dBg>=Tw8Fm@q(E1nS`4&;2$==+byF>_|Ar1c)l)wr!AS&c*$F8 zG`@q7deIh?{?FjCG5iA7&$#_ERU4EB*Q8$kgJ$=atiYfE(i~2D1OZ;7y*+{rMjroh zyY2LVyIJPk6KU{@gIe`7Xse;0)E_!XadOa%HcI8Uy~ml#k316TsV#Lmb@dZ6wAMBD zT<3v~hvw=XWq+6G5|#dnJ}7TC4Sc^LA}?!q|LDPx3zD@y(S6G`q`aoES|6 zBvnjGHxx9oYR_#zV6;(rN49#(IUDUHJ8Wh&dpT#~-uw;Fb16{S5;s@7a4ju+#)S71 zP@FH$%(U+rW`D|Z--=mZK_SP2M^_Sq%W19833@mlZOsik?8D@!UOgVL%@m{El46L0KHrc1N7qIDQ%w#`EH9TfvmSJATHtuVNd(5) zcPIcX3BW!5$EEl;rZ*rQlT@yNz+v+MofXYqyt8%E$?`+0v@r~UoGRzT!G5hcN5 ztX$_OlXg&i9?th?&Hyj+Vs4CC-fTYmyIPJE;rN>b^6d(PS`}{4)&gkmLv@=v#XFm~ z-obfG028T4w>_eF4fC!3N{N4>2bkN2V-!g#I0axlfnkg=^T?RU-yi+OMc$_Z!eoCY zbZr62aX0#oWPhMt3{vSKMn!EzI)8MQ_=G{drDk?d(R5|mM*G?=JxUBPDAn>8Xe$!> zyRFFI@%$xqG3#{IYmTE&!@<_!45`*|+81Z&97YlfS(@m;{*YOs3c7Q<)1}U1!zu=?rB~A zQLtzUm_-YY?fq{9VOnNnzl>7&3~MctbTOJ<#0gz`~3Q;5EQYYc1y= zFZ#h#UJ!(OfzcR=q&m|dIO`wyRV9dur!s%J-qR0IzsnA(X^((}k*aZzHUTEGb^FQY zpI6^Q3~V`POwObV;N=8>iZ}_qtpDvbgBeMZ9RtiWY#QnV_8#>yC-WoUG4`b<4ZwPr zKTaN=y8#XobG-03^Q-{Y_#Z7+@aO?dclWeZgB%6N1lt&*^*Xsk$@>HKM&@^dkpU| zPJ)~e5EB>T09fdMGM_wQ1mg0=;B?Y4LW*DfZXeRJN0#(AqlFP!gAS}h_ko81CxF5N zv>`Me>`kqBD96{b8#uRTuq^+u=6nbS5O>`#A=zq-5Gs?tI=Zpay7#5(<&e7ezbqbq zr+=R$z@-PjgtFIxGmaNqj}X9qM;?9D{BzJ@UHcFY%(zHKo#>CgKBa3r?b#j{GeD7Jx!y2O z#Atoo&>t)B9)K4A>A{1UXdw&0Ecd!DuNwD<>f@#e411MmU3H6TFEz!a!T zsw0t)3B&aOLiYcXc!&a1Yvqkn3&Sw*pkpS?6Ug(9hJSPAyt=!)pxpd}D8e_47YYLY zmAVHVj%!SRt}hrK6RCz`s!%HVDO^#wv->WXS>l3?UMekEqs_N*BJE(OJlzyk__I?6 zFgvAeL+&-q_<0RH;XC3XT2J;y-fvv`Z4BzPRpd$^_|to`-?-B!R#Ms-@q?wzp8Gc+ z@U}kBzm7>#1t^t|u<#OV6t7qb{$7y}31C5l)ClfG9ZYIU>^B-L*GF(n29fcn<`Ry;wp_ zEOP>^5AOTlL=kuI%~5C}4i$!5BTH06>ljd(Y?4Q~_KZxCq|g>~o*K;E>{%={>7FY#mjydWE6Z`||d> zh&;xV9ceEre}h4nzt0T6%xXkmfu_n(KNgpX%YL`|`kCt3jO$oyeUfIy%YVK{6MmoZ za)0sQzLv%&_@|-k)^tsSFQk#+KKZRY_SIy;F`@phzO}9{h2^Z3fP@5|l+(sK3#V-_ z)+bl6aENzx{4d59=EepO<+>1Z8ykZN}7iGA^N(8T)vjxj%8Jm z+dtR_6ny@jkUDaP`P7Zwp~vd}(cea1f`frr@=Cxm-oT|mr;xJr-J;Y2%OP?c;vW(I zQ)+L|pk?-KQ+Z_2TmABpR=C)B48*q?2B~h(H z^ftr%y49S|8v)vY7}bJ4JdEhN1Ou1mv{=zGU`h=Bk_*^}D^b*H*q9%#V0)0v)iZF% zfwo};u?~uQANIlbF@6!?(*S62Vo8Qh?89cEn_P;|e(Oof|6(dlWmp9>Pb?hv>kfu0 z|M$NXw;a3dUoL?EPXzd%Fa3XYeg8+j|D)djM-GbrF{J-7r2jFb|Nmd;|JVDpN((T9 z`c~E2VZ4i}TPMrtFzYj@M0K%uvJx%gp4f_2P5M=gk1~pFJ5k+Lf1QRtVCwp=m<055 z-YdfEu@1JxvD4EepBNojwMKy72^_X^`!5z}IDXc`TU7K9vYELj=S94$ z?f<;AxuRgH3m=RjBrn&Udg{=}Qv_g)|=hc%uTFVE0E-K+JFVDT-5LBC|w`86s8nlw~doDXswYi(5*}S^5Ri8`|l5d zZ=LBM>6Dmj!`DLPvt!g#_y~Iqv+h17(R2A=vVsdzWgEnw7z_W2GW_%PmMZ=i&?k~^ z$9fE09(yQ8-?7iIP_s1G5?S~azbU{{510(n$gyt*{ap$n;N7PVe;X>z$J-Ta zX6vPCe*&!M=CvsHF;+=wl`LwnyT4a$AoR+)J)`I5MuUHfDdJ#Xc!kE$yWsQr-#PkA zKEsZ8$lx>6d*xChRE$WsUuD>glvKJ3B*TpU9+--Nf(#Y}Z-4|w%C;W%TQXK4ndpmz zT0V72RvqLcq!%efFG%}87Qr{b2}~4d?!0z0#Sg6KibO~C7jYmTvaTXI5Lh=xPDYG; zkGUl;H@xwzB&D#0Ti8R!4p50C5X!5;ZNF_FY#KYDnq`&`d`$mf5OQDt4s!(?iN6|DvRNiwwXW@~ z>yuYSfqe>|TE0yS@*C?E4D));v|hq2lG1ZJ-wL@fBT91Ntok{VfW&fuzY?VTGxDo1 z^L*+P$;V88z7KCv4ww|ARn{c+!MEcxmO$sn7C=;CGIsWfLhxqGdAIrZjkN{#KuuZ& zF7~}o2_?&4jig!=opJuPSW5*kiiz*$78GNt(Gq3coRY0I)r2-qK$zGn{~-_p1-8Qq zgvr1oORQFrWYx~I_B1kDGCqb>>FSt(2>M@vV2qNjhzuQ7bu=(5dt-&dI9hBbgRRhi zYAoLYfyiQoaQ^(|`){ihtc4=R7cDw!q792@vmaZ-A)&up z>Pmnq#yS^d*e>uDJlC%AFXc_j34A?2lP?j13Rf+9YB9uGfTi__=Cb7=1)6Mcq5fkD zYPa7yZ{Ffxgp{+>nUrWY6wzw$7&(dvNPZK<$}mlI+wdTTG-X_^rueIjA=22O4dsM_ zVgcKUpv%R_Jmsv;M%)Xxv1YIO(xLNF^AIu)9v359YW_*m(qul?uoE(gwGPT98W zf4-O$ENJRuwyT~jpAt%k-iRr;BB~Pnm;W^>YoHeOoV+<2@XGCTbgOHte%cHT_@%(H z@t=m+im32cHT*rD0x+&HtvI_qFvLnZ%|lT}15UgfnwS#>EKz^~=6ZT@$Le_kW~)-B zw+XQVJE)6Qo%aO480F~n{Uh-R7ceY0-XqCxw+3Xjbn{naVX04he{Vv}{y_p|l+8wq zonxW~_M287u0Saz&aX>oFylWVw)!0-@aF};&A`8XyG8>jCC?Kmr6jKm?2cZi2B&XjO z1hFOOKyQ#ub&PTDifFNXL3A0%cTyZ0QZV77%1mY6dDI|lR?!nQy{cNFA==G4Zz)N& zhr8;7o(Uomp(g)8%Sm60iP53MBe^hy&f{s=`7>yY+E$?USU$a9YA%Y1rquk5=UExT zOOyYwJ;&Ovm4x+%CU^6ZG5@i_G=esVtHk57)cql0?L>CD@Y}5EDoFf6=cUux*n0Se zotk|!Ismm_viCxQ(Kzy4jgZD$K~4wlAo3?Si&>OY^s37*C_O-JGs55S=;oO1I8?cW>C$|13nGs8 zj$9u!u|xh86TF?+LXE~LK8>`@9kog}F1FL9g=+YC8!ELT#(oTMOJTNKc4w0~Fk9r^ z?&?Rk80NdfeqV+Dk_R|LN-(*2&G<4$GW@Z}x0C8HCxn{4*lcM~2~#ckc8v( z{Mec)krf7eY&W+XR>(vO!KL-7^!&B9(v~FZHrrPWx@O(3krQWaPIl({D2$6g9$nS1 zR}Icek`Sc*?^PoCUs|R6$R1rgwqE>qe-4O!Y%691dE|;Yfeb8_s<(k1vrc|uS+1>` z`gBgc5(pDzF^VQ&XCXyp(4WuCfAK#F_{wC^6Q_~j0`4HCfihQFCIje=MpNsS3Q4sEwf>}@aBxgvCa&U1Za|c^j(L49z1Tgx2H!cTee>3aMa>~;L~tj>Ws1AguWYd{fvoBB2~zJ%fu3iVL`i>!aFI1BB>r2x zeql6veZxUxcFNgRo1j-PM(@pFFb8d|W#dP9`l(IJ7t5s``wqVY+sA_NtmSC^GT$?+ z_*5!yEoe%fVw^soxTnQl(^1FdNMYIz9);n<&095_YVw6QX(vLUp@_*BWDs8SUKJ<1 zM(U4UwSKye9{kF?qWyXW#(w9DK4c?L^6jRVRjS-piQ6yqk+YXx`ifZ>ReB!Zmo(s~ zD^Z-aNzM&P7O)FGE48=V(P(y_|&? zSk8zc>l3a=S~+4%Z%sOU^Ex8YJdv{o(<>T&sW$z)AGh9RHNs?%Qh3btbXZSMiv{SM z?7Yd+E%wheQ?zuggj`42IztZBlnkib5}PlNLETK@P9Qvf`bgx#*T%Z))9pd+BH*?Z z>YAs#IJer~4(|JY24!ffg3mCY>9UvNnHMX<>v?N|?xALu!sH7EP7w8e-M!YNMAvII{Q)@xMYKbs0B z7CMlR=>1T2sM&^{5Q&~fZM6L6sZP&ID5UwTT;tLimB@CdcjYMH~*cz1q+$?|3b2ROXyu7f5b zPk?)Hz3`S*0dOEh7M_;ku$u=rjEGESgs~G?W^pfdE%Q)d#x~|cB^1H%RRFdWi^~%qIp@Nd*a)M z9KD%PH8$(w^{O#5PJotPbU~H0Xwd3cj6~6^731t}uie2__8QqNR|MB2QK(Pt>UV8} z0Rh+|Bme0KG|_eG;M@^6zVLZym%PiDC2W<`mxp5(|kNH`Nl%!%!D67mQ7J|XQSLN z$M5`tH?(DcZS2hnl{$zu0`{kM3Az0~g2uFID#APQ zB_Eouo_JWKmkQ_{@4O<3Uu@n-r6I~%;7(H`j56f39&_SlzaC6(S03M8M+#n2bkrri zy+JGfblR!2(J@5bf>22OOgF;t6y2%{ohs@V_A~8LH1g#+p~SbNe}Mlj3Pp4SI_ZHf zL#X2Js8=iVpcTEz8hsT<`Il1R?cIMy)LQ7@J}=-~=RFuR zMl6lZ6ha6tbe{Uo^vSOCI5d=n_iH*grmyU$6iEp7xjOX|5{c{Q-bm@qqIMQZiSd>C z!BgjYn$oiJxt&Y6Yh_*{Mkx13;pl#jS?Z4TtQ)j`cc?_)A^TKb z(n6|FZ(Tt~?)#g~56{|YeBPXvin(02ST~dj5K$mdLfJiWrhAIe*%AoeFRG}b8S|_s z{~(&YHc8JMpHVm7_byvLco~AFUu<%7+SrHg&e0JjtG+V?*`y;C#Zu>sY~ zJi?ZR`SQ4V53UrPk>HYHHxV4-U8q!!Ja4V}aHEIBk_5P0DRWU^8~ep0OiIMaVU2&idqYaP_RYB#DgI^s(u5ZNFr(6);*0a2>SgYsx}=J* z?$DoD4V$!8W_$Ne&CWgrOps*4lh>YsobC@J?)OS3uz3dAyb2`cji*U&H>^ouDm@lo{8*XR6WXX> z-pC|6yDkRp!;v>=)w~G(_0ca=cW;W`XDRgQkQ93v87&XJA!`rQX{Ax@NK)J|55|!u zV0_iXEYTL_cexX-np{Iwqhl}n9>>qXVbbt8?K{PCi7d>>eVEqzBsiJ;D6AiZIU;#> zL|!I4AfqRbv^%f)&An1eB!xhy&$;3o`v$oUmEx`1pF2W`oVP$8~8xmLvVN40}x z@Bpxl=9R9H{4~P-rY`Tx)t1lKe|vLvWHR@FJ?`|=k`q4tBo$Ci2I0}$9a)IEUz~Ur zf0*-9qx(k*M4S8Tp&m?0YE0Doc(s-L%M!)9$fo1VyOijdmo7`S=K=(FB{0c{6G%f> zkJ$7PM*a7IQJzT3b8Ri6V&NT=Y)_d~-c&-2kixmy(o&m#gYT^=@uQ@MZ35{iTGt;< z)+;Y@5;J>)GK~Z*SGF{FG_`N~RiNh>m2WZg+c(&m4&G;V#)+fRmP)#CUAp~&$#%Pb zr^SIO>jMXrqUqPWs&J{}=YEtkUNxHU7MI=TIq8f&w-jBsUnFm^7m>vX>)1~ERkfns zXV5CP4Uu#*=QFSJ>|JFFhDn-15Mu z@28HxEVz)p8w|%SMqE^8r_wO((h+7RdiN1RgEp8*e8vd1Z;>7^mo=Jc%n!D}-wS~u zsGpFY{cuoiRut4I$Q-)NuzPm!BbX%%B@@>GYlc`%5aOVNjXO=xY9u$2i6z zCR$WEM|`=^p{V5S0c6^%W>>3vpECRMrPS*K$z5so<%}EID|J&9lJRgJG1N#^u<2JJ z(xwSGo-@;NcFUIi@r(~^%^8n;umE(%r}_75Zb4?&4JFH&Ghz0mW+_A@`NTe>Y4X-Z z;SL-4MczHvI|t&Bd4-qsA6}4ER1ypDzoKV1wdP-Q%w$CHSrOO_7Vd@DK^2 zm8?_vF7MrS{jHTyKKYB-;#sA@z_>BPkvT(mJiGbk(DhN*=r4xuGsh}}7O@`3SmV$n z_&?)D{ZVa1Q~I0~k-|xEDN4!*aMPqBV6+Z_w=Nh#({A<`%W@3cs$xtA&bMDvCA1|JEB#M`a{XG3gXP|K?c#n6@*Pmb8$vz^Czdb0M z*+t>wTbMGCu$6=E-f}u7h}T8Ar7wF@V!@W*pA#_J^*;anff-J@2_4Q1o(wk<^)A#C zIWeox>@|KbzrQ*Ww{qL}GuPyl<4)jumPI4eyh*PdIBI0en`WT!0$+jjm@5q!X#%9kMgk?~nyT;l#_doyy4 zUQ2x{%VV`aJ2x+~ezha`M+5HwZ z8_`7zyS!$5nj}^U`F&o^ja;}7WyQ(JKhTUUYgI`Y4p|bPY-qT-N91`m(C;G zbAS9YC?xda)%yp0(%n0BXM0_*&^tvXIlTwoYM#g+6Ol_Tr^!ffx}x6Vk2;l|5INEx(Sq-NXIn4lg70 zkL);yI5%bx2Kdg2V9Qc|5pe&eSV(8?rR#aTUZX;b5r zcG>ki?jqBekRxome%!vtx5it%=V%b_aZ0mMwGCfUJ5Nh>(8`*$jC(SRW=XoJDR3Pck}00I(>0!HC2gm#T6pi6Y2+wCjr~$Ep@TM$I>e_lHEkAI(;u86 z3z>0u>|UN(upH(Z!Nt6_=iS;oc`3!Jko{gE_RMu`VVWs3K9_BCeycJ7}!;C;J==N!BSm77;S(;l+Uy(8o>yY`8n;&FZ&)R`-KT@EC zNpbM=cQ{`Z2ID@Md&kSb#K}dCYeC2FRHbzo1X0lr*}@m6seBXU>6hPls};FK-qZCt4i6BN7o`T;K0lo=BRoZ?LrGW?yGp9hoY&|0xOXSykHkF78(d4*X`K ztd#He!%s^@*B5>A_RZ4NhDYY8Tx*benOW>xo{O1-EwneyIchux_pPICjvnz)iB7Dn zV^g2g3@&}}N?GtE+V%w#YepEvat6W*6+vXbV- zqz}~7Ow8CNTlv*}Z$@JRadRn>r1;u*IS_tc9kR|O_eo_$=GhrL7b$W)c2V ziWO?ZlmI`4+5Bi=eEMe19QL5%yFpd%Tk)RD_q&XJQ$B0ydL^_T#WSJwci;TH>c#bG zIb%iHy5a@-O?$ZR&$(kt-p|l=c8=l_ZaTVYCIzE)RabLTNxQWAOA^+gN%~t;Pu(3H zdiqyQqmv@U{~0|qdwZz$y`ILWq091@9BZ|y$U#cAr-TQ8)*z)K%t!>~=Gq@B5%26| z)Bim%C?oPp(x4#^6+4%%X%cl8^Ra0Qr@G_I7p z)#4OavO}T;UeA4-ltr32eKl#;I@d~HDN{Z+o0(q-Q3+;8E_|1iqiJW0nprwdIA2r} zCv@Qa@StM8%(p-Zy+D-Cb;m>Vt;pc22M79JyVJBg;Dn-+)&R;LfOv0*M1AEH*e{lI%A5E_BZM zc|J^acs`u;Qd3SLH4B{Wyc-vd?j`Yy+t*Q}Q%;j7ZA5nre&(y41{2En%Ft)qw{Y4T zIY((CvI)3zJ#n(WM;z)s^xk%IaVfc_+2`0NzFaR4S1&1r8NA`70u~x9hke=>BcbUe zh|i|3OeBVSKCg;BC{bCsbnsHL86*yJh!Ee&jr!u2hC<|xXFzeXO;xT?bOd(ZHeMH= zHbstXMj9JPYo$!kaHs=6;0q@rz*JB7kL~*VFJQ|u8w7vWpf?JaLAkNu7*NDoNF}9e z=~>UKm8=`t&F~;-8Vd=gtahKYIP1*f&q_(-t=aafvU}>*jja|Aq}erVr@&<*w>hBP z;uoQTtvIDd;G8sVoLYWtr`P13R}PQ9rcbbE~X)8HPA~q*h3omL2%vE!jCu9LW#uYw+_X;kW%?BEz`_ zQ&zsd8T+vkARg_38}NV>LXYb{!p5&T>6bK-wS)&_XJFKq_bFhRU$@pMa<9UqiR4ok zOu1CnlWUj^c!>ya|IVoX_$(O@QXp)In9f1YA?M6^W8#Hc3rcK(>)=Hr#$CQ&?lqP~ zqA5E%sZjcz*`RObZTIS^->k>8lH8WH6@y&6`t!^$dOS~SCTYs-JFP}ff3_VFk-07N z$Z{FDe0P1~G>`mgd?pt!omo>PeIo_G5d_@LvDZMn?q-(I{m$g)+eiA)DXJmRSs}8? z@)U8#BU%61&O zkY(Ybq{x??f?c6?^Uw69%r>@qSFj>3>ut(Z-`3hpaf&jp)!FYFEKnGEDpHU{>tu?+ zG^;M^;=P5a%| z1b8us%BjMZphghm96#7+5W?){^u*n)bXVn37WZp#-Jlv(+!p_|L9GZ|-;Xbj@ql!k zKiF8ns9K-!ul1lJA4+sCIa>#u_Qc$q@lFu8hSKV1Hn4XVX*B63s~zlz2r+UsYl$JJ z{I0{#qV1@C+^qOJ%kpF57Cu(Q9oP6q8+alK<;10XW#cO|L|m^^ME!5(DlUEeSY zh)M|3NFyyR4bt7+jYy|-cPI)d(yerNH;5<*NOwwypa=*Ed~079KJRzt%y;JedFISB zH{;9=d#}CLuX~Z5TD%t-GUz@|BI29?H3$)b$+_=J&b5f0hSG$;QZLtlfL2zH%3KME zZ|O(l%&m!osDiCr;|5hL7c8OQ$q}53Ti)zFAvl!~Rx-IdVFA@R@NAti zt9k!^cu^EQS2vHQ^(3u>H0H`h&q-sTe#htJ+d98L|=p?>*Jton>yT2@a zJ;iH6845(ZuYRlP8Km|0{Gv4#`NIz-j#UIBl~ z&zB0dAmL_B(`7YDD`29~J@MMTY_mS)9#N%*v%=uAcAXE0zpdQI?aTEEL78=rvP<3t zT{7SPlodLO7!mQ~rP6hxDj$j??HZT4InHZudoOg&He=)CrcE$iEz9od;nF5Kt6-Ma z;*`J_tNho*6r3LEK45tIL=&NrF~e%O%z;{s`?jH%iS4IW_r{NEnHYA9LkoTp)bt8 z`x4S>xD%}#GbNZfE;YK3F3E=IWjgp@4mJ=<(;Wy|)4O*rFQBz(x*8t27HCpX-{$$n z|MUtwj0T)zqyz+dKDe61eMvHLHP`jTDG$fu2n}igY1uXmA&d&B03t!vexn^w5>y-r z%W%wN%QCGnBITXCl}U7KDID%p2mN(1RDsp^5KtTDf!nu^LIe&A-*wx5VYAF?yw;xh z(iq+_pZR-jY#4Rwphf0z{;tBGM+hjn5Cn^1s>TE?>( zlIzp@S?`Ka3m!!j`KPLMXW?EQWT*Ew6@+xYDT+$ZX%4dWC`3DR%f!ixYvSZ=;5q1k zSW8pI*ZZ^AD97Md6%4|@6v>9EgFyp^0fzO8P=m$(XToU{q-vIqxH>X5WFWwpQ$dO? ze4sid)v-g9obGy_^2R5lmFIh6H(bJ~2WDi)od`MiF-!Uc1gU=W2m^U zt#b`i&SOcQr8Q=;9nBZVJ4cfjOrFawfv}DLfZmy2yz6B88h=fiV~t(o=fAg-x7yi+ z1Dwo$=Qah-x27b&zIe@ky(}8nG-c@Ls8-EhuIQ?l_iNC>E+dP_zggdXVX%AQL*QTa z!RIC0=584~m!xNFHEiPqbNA6+&Dfo0j0gMf=f7fZ#UvB{a3~{4V~EcDm2$ZZij_;K z^pt=~1$|n)v?ey7l4@Q%yNlGH3q>Fj_<{mY>wHeJUQTUtlq$zm9JH8=^g2<_psG6Z~B@)GC6%mMK%J z)XnDDLexzA?(-`+)Jd7tNjVSn=~>!n=+bjqx^((2=0lN=JHOGTvB)p`P`a}M&!qO* zw}QG^Jnt`h-mlwaog2uPpFN5ltY?`oKdOBfgBD9xe(&ntvrhzFTiO|>FX&8*&n&!( z!glee7IIlzfA1Wsa`Yd5Vv@#-c1ieHcjh-}T`eV@89@B^!{259Q%xwtT<-FRF=vNo zufbf`N$$mG>t=n&SB+C$GK33`+GyOd*JHU~x>)Qk@X1`?3GWuyM39=)DlR4i3Djsz zIA84rqTdl08E(HH+NK4tG%)d?SA!Je=Ozc?4i45THtHzaDz zd89SBd{SRP>Zv=z=~6dlbb4)&;Wq1h$>X=*vf^Vq{iu(C&;sY!1=G{hhHnq2J3JX+-dJH8;!Sm)xEKijdZfR& z1VXwin{U1TBf{`HbI+O37;Y~ddh(rydr45}*_gA>P7~pTdybRF zU1Zb}Ep0<(HrCeEKx8$?+NWlbAhO3;m9PyWNktvVFc;gGOsO$nje_54?eE*7rF@cN zjZmw1J974S$ebltwEIUyR3B$C*~cU&U9Q*s=^iLo``-RnJp<1#AT1}5$zS?&yZ`xt z?w{{(dN8LI_S?sJn)N}Z^!eb=g3K}=<3O@HgJ(v0zh0q5wWjbm`249Ew|jqkV%ey{ zDM6CwT9pA@2?3|_1VH7FuSFmJIFgg*accTbe%k~TgQn{s|NXxglEt6*GNVqBA}7(o z!Wg>rATXyzEa<(%MceQoMw!MihpN?64Js`A0h55*s5(Uh)UhHtm`?&;e2vISBk#CQ z{9wXi;?`TYQ(a=cc%bdyC`tP_`EFbcfu0d3Jhh!&z?#E8OFZ(}5-9Yd*N9G>{J zUnV0d0_DFP*&P3_m@C&nKTbF4&{7e;pm1M)OHZ&k;P6DpFhK8k{m;)Glk0$1c6HUb z4-JN{a%!v9sU{Ig@{OrE)oaTf=QbdDtVTB5pu^VwE7fPOXcNsnj)?Oyo>IBo2a6_) zL~xPDLF@HfpWiPFCU%{!*yc?ff0oGnCcxL-h~`I9=Xv))I*Y_M=39cpkkBQ~#3qH^ z7yFTCpXgJa-(U=mRL3oYbmS-7ro1Eu#(@Z6DAr}V8l1e_Tr98MplCQIYh2Lo8vYn% z+qUG?!Q4Qx;McN%_R^o9aMGxxVTXUoZ>McpulQ8xx9p0Q`M06D5{c6}i71xT0JMPi ztI2}Ek!tlEoxZy{iM-P;kF+=y%mf=T0=ALBL^*rKye&z z>7^uXQk@#_vzhsBW;Oh|fA^XHd@gSOaf~ypyv>!Z9fyELgd)(yT#FX9(_?=&ylU2e zsRvC&ghRh^SY#4&SWd24Hpku@Quj%=rIRM}_b74~NVrx{rhtqRE(wTy!h! zEOnK&Tj02QlUI{gjQ$4M69UH>mf`jJ=V<}9y~}_9oNbznQ>zG1 z`MFdm+(qFELVcp9gA>=qYy8QvLT8FyN|Pc1ODsDouAWnA1ksX7;lKDVPZvwVcPac= zQ^XZNP-m5#y=He}V!pl8=&|)ptPMoS!bei7f2^)Z^oZEM@lGjz)L}6&d7Xx8%}>#= z-BF}(`?I%O_-FL>MOO3o_PgjJEx*3Hyv)ih=6B@wf6ZF)b{PA}%4LeI0X2Z`s(1tA zDtY<4ipc$|X&X)82fF|t=KsJ*|JRDlLD@#z*VYs&-C6^X0RbwKNPf3spz6qxJ2dr> z@6;^MfJlo%8p1t;Zt+D|`ejkGa zX?TFy`7^O>X}`J$!F^54w?W_RYP5Bt-!zy;w!G!HU)|d3D}u7}jii-4oO1PVl}9qg zB#uorgcw!AwWL{@9skW}okCk&z2EHsK#Hb7`O?p~0t)c13@pd- zE33OXFKDZ9fxA~_fAq(nH!|nx_j>MkG0%68tF47BymNlO8JVH3AkDjv-Hu7(lD;#y zNg*{L-v(S|pUXkd;u-rz_`-2^=ki633I^_Anf6EKHwJzK4#Vz9f|l>PsW?|swf)yjN3t%( zZ@(t;zN!&C5)epfu#PQ%cls-Z`&TPx{CteA%7mZv=lTr?r{ne!o$Xs|_X)l}^Q>E! z8HhXGu>RS2?33~rd!%q+h^_gR7|c@{>3cKfBO+7YzM}1J?7aEXmJX+Uf}sinRIP*B z=7T?@&7Yunoue#j3<}5tmXr*lfI>f5(**+37gR3J6~?;6fPi1|+g)tCmRds1eb*cU zO_ORkpoakz*pkW(7o<4*Z?@f^sBhUP;jxc2#T$CwWu2}*mecjQSRz)4*061hs%=~- zr-FG_Q(DZ(Yi1(cKxHT4*MJ+*jORDu(DBtkV@aT*`enz#)Y=?&oYG3FUMrvgzbY{JIl&39Pge7uz&cL zP9w+AU}WU=K67K$Ip7)lugy57^81@P)KQt#`F~~Pi8Lf9_VwWP8pim z1T6K$0L6Rgl8oRDf~RGfw`}Pw8usR7Fob>Of)l zT_>mK2@W0$r{4~F@>YL=1jhCPTE&JdvqCfii@p8V&zz3yJQW;LPV^4;+FS+)O+qIF zKjj_Iin2;bPF<;oF@>Dg63TG4IjYs9i4LlcJft=Q)OtgB!Cjnzwhg9k`HC(Eb8VrU zj}ucZzb3yQYWpM4&G^Tglm2nyoa2D3a?_>fy!V{7VE!G?0=|PdrU_8Tp~3firXVw$ zXVEmH`@)6u7e8&5&hsy(GfsbbyHFNc^ra7fG!0;i`QE|Dr{B!|8{FsMxnQDurO7_K z=;u-HM}R@`TyNxs(u^)nncdwSj`f+-8268q7^pD>LfXXLh9o{>El;&61 z!J6W;UaE)QM5l(PM&2`iShU%~;c`%x&KGJXzeV zV|e_6pX%a^x25u^r(@N&wC$B??Jhr|5qY`K#``Bxjx`Hgo56TK0~x19@2yN8BvPEF zFFH%fUw_%!%c4`kI52+i)K+1#{$|5ZUMpJ{IUN^NTpNBabpBUSZviUmxu5vPyoQCu zvqWof%db$!R$C!Xs?~rvNvTHzhsniGfryBqfj-_UTKi}~!JA-Nr^`X512ywK z09Vfg@-*gXI>TZ9vh|bB@9o4D!uK5!1*{qzi>E@+ksA~;>Wb<5kC+0J`5t>km=e;y z?66kPD;Bq%mraM22wwNxH^cej$NG$0>I>nyL3Sy+bR9KRABz_iN<#mS1AUiG~lZKzARi^aw_oP1d)iW%QA2D>D(B#V$!qFTXJ;$n>~VosU_CqW<~yShOAkf02%(eYl31_ z+>UWaYMFX0)Kr9MAe548KYs#=vA#yi7#uq}{XxQc)~1nR9Ph*m!G^P`Wl}v*Li#Gx zwK&#bhdcWGbJg#r*>?XHXBz)UeT_a}Se)|$w}h>xDup%*#~Sx7^tkVDylDD23m^*{ zN2dwDJbld7BaK?HV*RXdLUAJAq@0vLYu!rcDVNSEf9PE6by4wA^T>DUUCo2d7t?Zz zeg0=!-wuXKe1=3!>^n$=G6xRiU@aP%2_UUjy2fA51iW*jmw3nay1+Z{3B$Xo6NkDM zO7fpdAV0nB7N@1X7<&s-D(=IH+gaiblTQX3lqs1!R7YJDjylWVN!F++tn<)CN+!LC2^f(7dZ zsPB)CIwb$!MnC|g`EF7^tf5O6>h5TMqx!H98Emb%47737V^X0`P0}&L=2w7@kbbax zCX%Y#NNONysD`~rt;!5ynqs>Ay9on9LBX|$YiKH76glk#ak_v z)h}+WL`6@U$Y45q*kV0d$ZLSwIId=&-5q8qyED(aW3!9gj^ee;^Qz{}9IRTf)I#AjBO2?lv-6&X{H~8o8L(%Tz`{)~> zDH7nIPThX91USSd)CXoQa*aL@+)`m&_a+5E^XnGBvodt-)Esc^4Vp%-TQ~h798kxP zH%ehpDA*awDB)niYN65De(#?cn4)+h0U$;H@d5l+OV=UcOV$rbjX{skP`$jB_rN{dng; zjeL_}>jr6+@Yb;4+S{2v7bM5$1@H99@>@?wZmbv5_+GfCFg^1J+wL{R3)@rnzzd&6-LveA;gkV64pr|Go zD+jtslfZ$XwQWNHMfbn|4Jewf(-q}rl|ymBp@e4nZy!Oc(CS9HgALQR z$<*s{Q|nJJdYzU|OM6BOb&uIX-D4H5L6iTw$9!)3CB1?`y*FN4KS>+2VOJmur78_* z1Ej)Sq*Mh2qMvO_cL4emy<^$;VdGLN)xcPpPlc-Vgb@Ai6mK5yrn|a5e~&u;uf++g z5|SWw@83Vg1Rb4A!IWyfih$oNyNASTK$q!f@eFg=7XGk;j>!um(TiRDZ(p=#Oon%L zKwo8XHJB_0r-pA-fG{}`gU>+^rwM3l+%N!$g!&xsfnM5Mp?Yv|q|%69&p{>FPoRFu zh;8pn0fWsLsN=WEjuYdin+Op(m6qN8eAssOw@G);_T1fF9X;zI-V$ZfyNEiV%kV%x zx6rBvkOhxH`gaScW06Sct~3<1x*4N0_B#UE%|#1s1oU-=*-6yy!I&A6vJ9ZP0vTnT z4FK(Yf0}a%5dRUGiM|!+Gkx&jD;(J0Xh5GSotSI#JnGh3v14)oTgCqD&>`?dCs@7#H}S)R75!TbX+HFwr+x?G%Ax-gPXle80rzYWApiyW0vh?z`JbDLWX zAy^PaF-5>g3G+&d-aFH+fxlUj@Ccd~R4Lu5m^p+JR|fi42Y#1m){nPxW4xzA(FJtn z_bNn8s}v{}TP?mq#Z*98HaqG(aD@K^2l~m%ER{_hZ2e2KBeq>$&qt4Yy&41jS+%5- zcS%LlB#^gi!qG^;T@#({Th4#l!#~n$9&=n4?~?jgBpm^H%mUiOHx)%GA;xb-S8!zj z`0U9ZrGdeD_x4s`*?nyMT3yOiN$#bj)TE8%U1mpeEkNFpfKCPQn2W(0w}Y)$$NfwO z{oYerf_7|K&>SvB+A5Y!2{e#sm*V2>EtFs6X0wry^f%1`q9a=Ey)rARY(X2qul|Jo+{ZX4q)39B^vcwvQsw$PTXOT;qG8`PTg;A!d0ALKL#DwgD zy=H45S*T(Q08=!g&JG6*E!eTbXeCl`G4j{k;>9jQ%c0%l^SXI~HVg>SqTG-YQ+o=U zRV&4^4ZFFT%SU}lW+lk50IwdL@koaY%z#}_L@=mE<^!ta3Qq}zGngu19RsM#bqD8# zLb`TKY5A>cP=!N@g>BuGcXt5AxPwTtm0N#9su#{Lz6m?loP zNCnMDA7m_N@TU<*cec9u1P?V8}TI_ZGF-v%h+iGIBoPh>85(<|} zkfhyFDZhF<)ahQ~HJZ8xNQKTyPA(DZbSI}Qh7rOW1+YKEhy-apO3~Gc5K7hC$bwMU zqgtg6BN92v8|!1r&s>kSKm&L|zrqS8=u~y*^U`eNK@xH%y!4#q;DO7+8aIi&&O`H}r4zW|){c>n@UHMk02 zDSU_M=KimL$k3EHUg)-{5tS9)aj1Xl5b}R<(=KdGG|3xpLtN(KE zf4TR+!WlA?|0|sTKd5`HHBEoN!X3|GyH>4ErrkU!RGzcFirdu-hG{YcBoCBB|JfKm zRdl$@w8vU*?gVD!T@v6a%|5{20dsuG#28EQ;4u)<(#|yVg2IQM{`f6JhK&=&3*#{* zp1g#Q;qzkV2oAj6)>xz&AllH#?1D)dUFdf3>KovxGU6vF(b{+12+t^5rIXDv0QbN zNBHlD{|oB>Ul3O?m|O9#Kv@HFgoE|h?50>VtXQ}T!GIX~tH(EUvhE?atME#sn8SU% z?xvu(lQ2A#1o&D4EC)q$?g4habEoEv0K|tp{cOl! zs~JJ7i4bubf7uU9*&%%Mk*R^Kd?{84CJ>^aeeHEUfr}D90w9?-x5iFffH)Y~u4L5# zhlKj^VWH$o!|b)I0<|#-Z!R+Iy}UodgL*J|0{+nldx0{KyaN&7q2+js(+NGL6#d~tZ+F+bu45brxo)GL=9^i;NIJ(IjZGM~x$+b&I8-QWE zA2oi*YHbMBV)#@xbO64Ya5YEnzh9Dn z;xmbk)=^=@L)w2?J5OztZ{O_Z8}PKOQH`+~pp3&_R|_fd#n<>6xiFxwbV5OinaJGn zy4Z4}oVZ$Kcu*_>?B&sK+JrUTo2h13$c?O@O%!d^ZpISf-34wUDGH93B+M^_8o-~3 z>+PJ&OvP+A*@CY@>Iedjifm(|hB=H>5s=Ox0h{$aPb(UN<@_5QQfQzfjjARtv=>T3 z0GNH$oOxqiM@~cA)yeL>XSy&~GaHa`8LgKT^ewP(IXd56tQQ~$Kzz_WN(!R6YwU$w zu&IEZ`rtSo;rWK62_teIy-{EeBLb-91_~7l#=-$o4UN4f@r<$U0Gqxrm&Cxu0SXl* z?kSvk3qjo24qsMjUQ)VIeiV!%XP8pwV1_A7EFd#n$>9DZ`8>q+1Z4qDM|MP=1_&xBL{j%yoU;tcX2EGQu2LP%dY%#|K zobSbH)tWF6r@*`0KWUN1&stci+m=4B+v(58m;l5udw2rqH%k;EX_+b0Qgp7^%rfT5o zc?e_b;82tnrcs_ya2iT))dA>^Gk!XOJq+Tvz}N_AsXg`E4IP#zf7;aRn_$=nPay;X z9PNWiVlWwp0FqJV=pU$BWwND$!kDZ=c!8u@3`>oG*(JJApe=+lzEHf#j%p@-4lPO4 z{4o$_%T1z1?V(mdz5!3a`N1~C1^{%(vB%Yn2JosyStTb7$nF=mj6TfvT8-3xM1;0 zy6tK^SNnMPTYJWA#c&9SYG(5zffAZ|;%fdYQiukem4LlgF7^8S#$L;W?6n#7>N&s( z3o#UR6=J|%yTi-_r+mtXAb=D`iOULxPIYJFLBX^&LlBYKM9lZTK@cT~B4Oy-?|_V_ zPDS^=r};L@Uod76M!uiH40m3VQ+XK{e8L$gfIF?(jAPh)nSfDw8#zO)=#d6*J_U@} zpfQACF93HCZXSFOOjyiN`FAiXDJ2AhIXNYN{naK~C+2 z4nPwmi`@j}d{Pm zz^bNhM36cd)rH;)xbl#0oC`L)wv!5^4PJ$qX@-ZD1b4wgaiUTnrWYk?4_CB7yx`-I zTGY=0&?D}eo;L#N98YtZK^RxhLpK9(dH`|x8odtEvGyPU+Q7{*jt& zkg*<7B>_rwCDJCw2V+LD3c7D{bfe(=N>dGsqjLX74hCg`FlxZ33~hJ_7K)3NbXWRT>+ zB_wHq^ry@3!Y43`rvzZmLpmm`1UB;*2*fh*>3Zo1pBvN855PUuX$X4(O5IAQ7g`_z z;e$%4elrh~8zdhmQ6_T-T*t{e4z4Z2ssz87pZpB2u!12jl?}ih*smW*APMpUw@y(Ms3kT~nv!#Iq zA?`}82kgk;YI7!*@fj zaTfQL;6&J(UFHWl11tuDgMl zWCA8Isjy5J1p8V5IQlmieN zb0@|Y&WUeAz`BpJ)t|8fIk-Xfn(G5G5M%H(4zT|$gBvAnTk2~H>wh^V>XnwBvvFD$ zW(B6q6gxUt+2jZe&Ata2L@pK6o!Tt(`;$e~&tHa{naKsGbX*l%4*k^{M7c`AMb*&= z^+uitP^q2!nR8<-&_G!#FatD!9_SG7C_0Bnzzb4Mj7)&xG7+6>!IDtU9`+6j4INnWX*^y$Cs>jnoni113s`bC zf*bbd6Ld*1+NHWqf!^`LHgK)*AyNRUVx~YF`zUD9GN~%410#Sh+@RF>jTDpuGETpC zdJ@{8u+-d9{V29q020jf=zNX{YATP&tQ>~7wEN8EkFh`JbOO*Y$~DVZgWNVbwPM=; zd%tE)9gHzMwriMqvRR$M1=x0;0L+HA>19q7HkfrVvyBzy0XE&xr;Hr99RO0LAc6IN zOiAX_WaE}W8Fu+^cp#mEf&TY!EWYv{h~;RggWMhzj!IQk#fDQk2O*&HBP>-!1wdE& z#1D!SS^-1<%8!SozrG0~%GK^XDzPA+=Ug@zU4~t$2TT+m znaJiF>1qf`*WJO9d8oumxwOy*8t{yPR1K5OqWMUc-C7%)={XAd$1BSKEuxPAa3MQB zs0AF+gV$sHCK;9sOgmX{>C7)szrYRMLW2+F93xH@B230Z?j;K*CP+62Q-KAbq%v?1 z0F1!s+Z#Fl5|Yv=)ZuHYKuSZl$tqZ2)d*f{v>ee{(Q!qrt+}L~j9u>dF#?d*v@h_(4t8> zG7H#;3cxNl`I%oA00B9cZ%iHzMHRO&m? z(R;{(kU|oBWAniioaBUcjq7G+a2yc%@wsNg|J#^qxKnu+j68b@+ng9w=(HQ)o6=034Pnn5H&}ibt$U1)D8hut{w?TuT z@E$C&Gul z&ki6-4Aq(h{hLxO0g&FVGS&M@87^J`N$iF|iD_Ekpl}1F=_~>EAI+zx0Acx`Ees6g z3$WBIA+BwhXb!-nqvo4Sxc>Sa3jhFJNgxOOCur8QCAiNixVP)QE$jpM0P5N_;KoC& zN=X1g+Td(r6dDE)&_I6t2-4+13-o~_I12`8if{vHf#QZr2f$tRQeo#XGie;0ypDjS zUJ4=jKZS0xG606#jp~dL-yk5d0&j5n>3E?lC)gto2yp2>6qPZRdH^oFgUBfZf=rk> zFQ~F=23jxwovSFaIt0a?kED>@2ex1ZtQTiGP0iXb;Muf$Lo3xlEq)%#q=wN57wfmu zuwBsHuBMT%Sk~O_&ugec=Kr~UJE5x7+_e(~XbXbPS}70=g>2^){Lj4NkP^DO|11$T$N~<~>etf$ArlVx8gJ zXGpr~-p&9T2hIBDLZL8o=vqG*C1HpiYYSnQEnZZ&X1$ zUf*fIqo~be?(zJO7SyE@cish_^rW!a-kwN;6JT;>AG%m>d`+>1rtJ7Sa^1=WV|9+$ z+KW%X%sFxH_4ywHeS5Z9VoyrKeTGbQhrUt(6kb=FVg|PYc_jczSvaM0u>#nAkBEPx z0?6#_HB(s>@J?QcnZb4orhX49H=b-gZt&U5OtU>n0rP?LLa>7~1Uxh|1l*bTK=q{P z%KGa8)G5#gqJZ(_I*#3OGczD==P0(W^|cvGG~J5+D}p&H5LI0&fQ(RBkVrI}2*^1u zK$4B1mU5!EP;Ijr@Fyg5VRWZ}Y$(^5xC&;q$$yGnXQekBZrVa~-;ZvH2yQ;zD4C#Y zBlt~ijZqsHW_QbLFDfVxK)9ZZUGv7}xd%n45HchLK!NGROLny{ph5&C?xsQ{xD;Bv z-ys}K*)0>ZAxAu17n4%^Rtbk z$KS^{O_*F8RnrqYq_(VZ9}JiMq^!fx>^b-Zf{gFgg%D-=5gXyi1O{>wDbW6FP^& zhBY)SG?iWqhFGuo)e)?G`V{Dr8Gt2d;_>&o#*=(mP1Ar>gbNX!lFCRdSN<;IqtPdl zQNcl?;6G&XgZB~S0`DcnQPp!%#Uu#XQ5cZwtq|36QPuHpmmXx2SSF_|3_8XQ{@D9* z-9DW0Zs^_nMe=QlI5O|LjOc1~t}cuwyZ;hVs`~2kd0p?_C)Hk;ylAc3gXKsrtDk7iZfC{i<=I##u2$3q#B&fly44)XSU}L1pvGC0iY5E5 zhsr5)(?Y}(jC+oF6!U7yX@u6^>%Ll;_|-jR9$R%r%h|SWu1=AcB|ybpstnRwaT8v6PIo`pTGk# z^MoIMLwHpMR+oLgKJ6`b_oFj76sA6TjaC`i5eqd|lzJ)Sn|~oTUheK%Cyl+* zXnNVtFj1pv(@ACN-+}42>+vCS_vfuAS}M~O?N^Bc$j2I~`a+Xs$HXizUVlSviW%Y! zuw(8mos&#!IH;a&&~|o@Z>r<2zU$Ib{!qJ*oj`!Gan?KsrTmLo7kPfil}BuIBQJfJK!P7&qfNdL(5*l!D8n}^ixTj7fmKd z2||E=8s8u+q8p-+NOR zT}pCV7c;b&rtC1@uq#2LdeULUcsnYj*)97{o!yIXA64X6tcwpjHAhbxbg&|mwMK{j z_~VgdKT?_bUaO)?h#k_HjFRV**8X>iceLkMw@OlJ)LVIqPt?Bs5%GMth;JviQU^FmEbN_(ZtOsD`-Ce)LV|;M?e!EJ2A8JKn;}GJU}`<1$@kp{Z&O zw8;DS-uJH$jP5`2w4Nz$$g`rJsw&uQC)?FJ(SO_EDr!LduzV~Z_vv1ySs>VMR#BLR~HXyNQ}xy-3}2$0YjgmTfy^MA*Xdvncn?X!X(#K8{Ef%B~P@ zk8zrO>!Owkr!VjLEp6d6v`fY1G&j_?wr)>tfq52gRf_Xt=Cj}LH|)jwO@f!K$j6tF zv7?L+=UtwvtnBYuZVhKToEszx$JmE6rcOsa({|*F+^! z_X% z%za|bQo-+U|B&fAZP5|rSlm#M6H+o7d~)UEbVOVgX%~QOi6Or%PBvPb+f$iTiYGzBvHLv^(yz1fqk8<>ANss!<$Aot6s_Nu7Zb?th%1!E zM9=GP8?wBknZ9)oSy2pOX)K@p79Aptml2TiDT7XtG?EeDu|EXtPRE6oAI}4^J4yK# zK3rgOBexnkW03G9V$zZ(v5U;NCAd5rwnVI-Fc8Y?qkR=cu|N0T=jvx>)+?RTg#Eh_ zC%NQCNX+F*%82N->vlYeNr$?qzV$`o=IWRC@GdOKu`-j>c`Ee8Xj&2|Ct*j(BQWVzz=<12o zZ18^asPd2}bfz%rk2u4ET9r}0q}P`kNz+E*zxCeto5}ed zYIIO|@&@Cc$O-aPU|6JOc=CDSrli)XlB^({i!GIsSgC!KAhMUhc;Q&)e0dUeTeDp8QC*;w1!beaE1Gje#3QWE(^_x)U=U$| ziQb?V)aAC$1%l2$mb3_66Qzk=t?9}L_mK*yr6S?B2rJDpW>;OHELI-wbxp$TId{T} zLxN8kN|NFIsgniq@yd$tGMG54Mm~84$De(J8K16?w9P%5<9zvaJ?Z*FJM7bbLB09G z2%3e0hA?({y=c3jX0haBAF&t7F?1&!r6YxP_CsbyIXRXBZbcp#RyZEJtp*90pI%-X zHN5gS=HH)xAi;+3BeqeuXOH@P_FGr02rH-d=uZ`8HRo&WU$x%f&$-N38B#XcTSy&~ zG-QWa@n)%2H_ohvJ|x&C8xx$MwW*4hX>dg1#1y^vAw+W;5QuGMsXKBHdn?qHaLR2l ztfEZ1!y_Ap%tLoYV(Mh1tgm)*ID$LwwDmwwm@@b7@x49Dqge_E-E|l)_^38!Pe%;T z4w(2Vb39TxhTn&$p*vYB>l^%P(ssUFofc*t%|j<-(-=5ec$U&Jz3JIHeK3_=ySVoF zm8DvO{Cc#Kx<6(Y_XNraB1&=$B;l-Z6j5#@+`Kf9aE=nO!Ai;qAthfh!nXNi5y+8; z%wJ|gb_5WCDxDJ{OuiE2(?7k2)nv3w@mJ!Q8eJOa6~wJwxNO=krk}Wc&6S<4y9gQ_ z&{MsKx>GuLI;Q>IpyA-ns+^5sWSL!~q24XuUUHGjFui5Cw=tZ^D2JbY~_u^v~ z=Um@ND<{*bM29e;rygGl$g-(A9*(qohM(?faJhYbHtV`v*=jlUq{RJ0@#L5qPvub# z+1T4N+m;&oM&p)%P~!S(Jc>Gh>mz+OQ-{Xw$5eRkK`3$#iYES-Wq3?Yf-JXnd{19d zySDjnvQ9W|uqBz^>nKGjum4fSBw~_7=O8d(2dvN!BNF7-63BWC0kwR`-Hfc$tZ6l?DTKxLDH6)jf&`)VWNGP`&e-=xV!slHM$Jw`#{$D@oXfDyOzr` zW6x=)5t~Z#&~9h3e6o8$IipQ=kEunX-pY6LvnA0dJ#FE0BJM`EHvOt}LDy&Pvv&Ka zpEXNt-Ic67X0`I|gQScVG`3+-)5x*{7CSWD99)0of;w z)s%w|ZP|?4#VNAR(>It6%Z**^uQ7eji|8j@?NXMm8&xW}y(F}?id7>fndR=8+m)5o zE4DH3;mfgg zZ^=KZwqw;VzcPs&C6#|ju$vqh!x%v?`pWcjv0mO^T}Ec3q-`;Cxp;qA&CGDygd{&H zT$4aEdOHU^T%QnO<^uxa5pJh%@R>sxQFA1)FixHO3LPnf?go=&o6Ev&{Q~Sm zkFJDpF=-t`=Pr&mMg zjiG}{!5hx^jJaS!JhzPbqrSuW#X(2Wmo%fTW|XXf?eC$_RV|5NzAL= zI4IAuNIi5=$NrAA?^AuOTx9Ywn0F)=aj&;08I{;Om_7P=RbI{hk^%yXAyeaIv2l3f z*OX!aY|QUpSJL$q{Q~Wn*T249_z+!(9{nycBz;(@;{L*f? zfa~Uw$$J2g0C3jWbU(sqZ!g#a|y2X&sTgOS+KT=MZdt8(YaXI!g&y>G8G+d~*EOH#yb@*&z z{=!5CSy2XAXP-14mDkBI%TkdvFTJ?$Mn;bxO|KsniO=YayAJs|uTiJAS>KK(;}Lza zj6W^_pvpr)L{K#_Va@zXS5=7dBzf?Sa9jOLJR&{&wU5T-YH#1UWe)Atkv=vjx4>G- zr;j05)Z?&9bfCC8qi@qM2>*ICJa6;8$ZSD>=j=Wq>nI6X$hfN~TDjlBxZRBLf}Ll7 z6WJ0yIa63l#RNU~|43Uz7bY6g-&bOHMUF z6?JxJ3b^+}9@xN*aXg=p;5IN1q6(qmHMZ|J?ZPv@T!+n|dd)m_?_!gd2+7{#1&KSm zt(+tiB}x|Z`1AyK?$eUy40rt1uV;Z-tUfQlW?f$0wVi89ifU17n<}zhkJ8LNeC4*j zX&3LjXAX(~QmglDX2U$d{>_}WB)^0zF}xN7x&hP(J=iY+^hktdN!Lw=I*Yf@~xkZ0zq$ALy$Xee+Jf$bDu zZUbq`pI5@it^Nig&ky1$k5ZWs5C}`;B*iqdvp%-fXtn37!!anMuhT8k(uYw%QjKZm;QR4VxRrb<5L z=hjkj)8T8fLflbOY<4niLvQAN;i^3rKX%8Q-)P)Jp~KgIciDCxjK{X)hFGfG%>H>h zUTt%$?j`k+7KundbBwWqg7&AKC@aa=`5WT#+BoQ~65aHV3bbSQ9tv?%rF%KZpKp)i z+b-3`GEOqCPsaQpF!WZ|C(%ozUNW#t9LmAzjoK<+St;%bhN2~eH~=>2X66k4V8ai= z1_S~!=RhdToy6zfo-G8MRK8EQ;IN^CJUZ#e<8SK(z5cu@9(Q<@R_{2HOcza*-?H~> z!j8kf6lbyFvqHFa-+4ka&t9(plWoe*cClvlH+=)IWXyZ}ax*nTId}uqzJ26;@uIst z4mFK2B=H29F`*ZC(1)jfHSd!0n+1Cr7`EOkD{(Msv!x{#qIr#mJ~Ex`l{KU^w`$#! zNY>0qfO3KC{vKh)KSlV`yh6(HSu9z@jOU>QF)4YMo<5gd^}QA*m3tytnP(x*s7_|e zq?S#dr^*oo=VMtFmsH|3eX53k1B`CJ3fK#u?@)Oo^}rHP@2+C{e8+Xr2CH$=cMjLl z2ez}7G3AdA)}MHOk)KG@DtZ=ccG9^&Lfcs!^!3BfwG?#bABgo@!<`L?U1o1i$@#=fq!{dTrU!lhL>&KcJYL)( z=6Io;ai$(M7`e1mnsztKS$6eKz)L$$A4I0;v&Co1>5~<&KUC)_Fls43S#0)Ixe7(X zync-gbO9MMup-DjJ~F~>1kp|+BzEa}3ki#-cP z#}3ardWz3wXvLA=@A;5bjm8L7I2oG4SKpWb-xJ?Qg6jlSM!|mGrD)+XuMeVlm|y%N zp4sKDn5ItJEWxnaE#*HH&gXSnNc_I$eZ^nG>^-bQu*GI_rWf{Xh*4aU@I$Fy4IdXM z%JVMu;f6^NsSy(+)B0<>lex$)_cr2sE(_(8oa2EDr9iQ7+>kd9gX8THad?2Kw12dxU*G9=kJ? z(qi5jA8r-%LqX?AGIn&Z!3*%rtW_8R<+2TgTN{ENKRD(@Dfdy9+bH*^KUfXZ0mrar zKXQgX6qtx#g2MCRpUS5OzjveS3Io(&j}^3Rd+T15SZ65evhQqYbYv0OCgfuVy@MRg zFQOwEQ{b5$?);D9dtg7EmPue%VOBgv}J{=xYU z1m{qy^Fs&>Z6n3H@3bH|_lAhWpSb@J>_*~VxDBvEu#k1;ktvt`p(FY8^nxNJnAuC2 z2gvn}x=Z8G97L`j=;r>6z;w~X`wVx6y(ppBqcxWz5wc%A*c1h~VB$VNg3$iNM(^ss zMf9LWm<_G>BmnHr-&Fbg7kOd*IVTG`hRzdYg$qtObJDXX)|mtVeN1a-Ue+!S;vel# zZAx)(%_+RXOWmr^Q^sgW&q0%8p7zomebSe@`gY;0+-Q6f4l8O>4selL! zAl)ThA~AHQFbv%=cb`H3pYFZS{d%A0{Rn5yK6|b8TfO!41*?|}>9foQ@oVOmHH>W^F?mkW?7PjIY zKo)c36U~37Wd<_$Gnanu^hW@^Jd_NN>XrukDbmK-K2M-zuK{Vdrv;aSJJuoCCGFhj z!~1#_;4bT`<_-p#;8LJFk#J2-mf zE{Q)(dgPHhWwJL#$Ko?w(WTOEi1O0Kxv+()Bw;0HG11#uXVOK|??uOWICVpWTNSO| zewy-4p%?Ly2qvIR9p%ko8hog*%2=LxPv7Mlw%tuYRheOH>R+l1LHNwYouSQrj|?(m z*tZP{;5PwxtObn8F?teMd~-S{$U3^fXlJwii3&2@`1tcR{=DNdUL*HNYiqG&ty-U5 zuQxiS&lG(ncOJ8DKf{mbXi733)0r1XpGZrh<~~oFry~}n2RWEkv-pO5A%hF4|qX2+bA}r^}eL^ zEaBEtQyx$|X-mBU;0=7SC=&SMi+`1>`Xx}R>ZT~I;B5eWS24963ss=q2?N{-lo*@_ zKnCowgX^;NW}5Umx#)yoDF>OPLy6R-1@OQgM!+U> zW{KhAs!{zxExNsT&u=eOkSG&yoSg0dL?4l^gsMxNFhMxDr{P-cm zN@H`U%j%w9#|NIvA1IB?^19hFPTA(DqxtP7(-}BnUpqDPRWc*4-?L91f4;WR_#T;< z<*E?Nvu?k?-pAlCk}9A0K()u*`4{x*R|9|VxSmsoNAPT~!DsJpN?y`K`)qBO7`zsQ z9WPum?fw}2jM6(%pLGX2LoU82J+CyNwaVqtywYWX_4H^=)QfYeXy?SaR~6sUSGw@7 z^~z%2*v|eG`d4fty-kz&`cxL$*I8r7Ssh;I(HFmP^1&K?j1sS8`2*+^E<`L#3i7Xu z`yPE=%7o?LIGofz-7|YLQLaweopS%}vv_tzC6Tvbpu41JnJJvPm^|qA{#_wm4VUMQ zQrc6QAWO=I=l*C1(W%R2c2hIC)pf%y`zY~LgP)?q>3W*l`q_`Kzxhnfx$T465S{OM z71Id+8d)e&51MJBNSYpM+`r%u2?XE}X?T|KMHq^^FS|ypPy%q2;|gEGJ&(Idv5N5E zpmQ2&)}<@&xOvQ>F$7w(1Z&gw&RpHP?(4rJD#BMzYc6xZO#>|!zux~YP`N)%LPILn zo=!(qY~BB^8KYy(*vIv+rB^5(HI^w&S1l zhj0kz^5L&7DvTkqL3ZVA+NP8s1o-{o478A*7bg#MuzwUH6JJgIrsWl!+xke3(l_?+IQ*PF_YIT++Er@Vr?1!8#geYR zcRVQPb-PZ%rSpX2h5Zm{YAg4~b`&hzDp(-&o9MgVaOZLGFOEo78s$W_yzsOmhp9RD z>d-O@8fVSd&fiDa`^9H=Yu^dw(##~!(-YF%HPNr}BkYdSxx4!PIja)e7qe%mY0$PR z_B`g)wmS)&wz?DKOnf2mJ!oFIJo`37^EZCkPz0uXL$T_GdN#0)yt`NWUWP)v`WprU zC#}U~c&WklZ)x^3L+B22D7$6{K2KZ-nv@y*cQu_bZAw?87fYN`8Z``uqse+x=^Ydu zzaweOESiSszPC=6lU&T!Tcvz3&K|DY)S^gf_#~g#jCGry+6q+WBv)Ng8R36*}+!;JRkMDvSP67?~0tpReqU{z(k4 z&fL6xS#9Bs>B>x#_=-2lZ}pZ98jK-*KL}giU(7Q~81_)<~47!pPk7Pw!m|s7#Le z{B|BUoV;gpHoH#g;kctCRf9|@yc}_7HVXy`Ru;DF_v4D&(Imn`PP4moJ0+P-eo1{6II1 zcoLUV{`O@Dx1qM|BL1V&_jvA|L8*MZc(l?CDI&MSYXwS`beXnqJT6yrNXKiNj9>lo zg=L#e=^N6IJm`yog!}HvPUvRksVs6gU*CesS^0IsMd^rm-n525a?*k3bP7~!;?g0E zav>@rhXUq}PCBu|ho86XvyxBMd*?wf#`LvOMsoBG zdI7n(uF+eGOB;3hys|qlOmB+ncsyrqXDQbyvgScc>?Ru$E$X3ihmeTQo3Vl}53(NL za#`n`30$?%sr3?-;*hhc18rF;meqmrqP;~!`?Z0|_;~nV>pG*Dpsv6aRv6?Ej@1I^k%C)x|5hoq0H+%Gy@qI zuM!|{jtMyBNts6ztl`HNHg?{JTIfR0UR{A7d%1?g&0c%$h0GV5A|J4-tT}4Iyiavq zGVe|MK74s}?E@3LgJaw5mBx#RxASe~It_y?=~k`NzK_A|PsgoE9ycxYC2NRpw7*=`F zt7{ze*GOTRLnSUA%XF@PM#=^b-j##FyzG+&O6}&Rk)hh z*v8zKsRftL8v7q;dBAAMLMiPyfAT0+n=eI#eKARH`U3`2IJQrv1V*Oeafps*Y~p*b z+6BWket&oUH2;Bpi_$ACK#B|MbKZ2NBFL{3iWaf2NUJ&H5b7tV7Ik-C>XG98{+#rt zC!zABNUvI7JV7US*+;p7+}m?jxSFO!S|t}1q^)Twn^uQ@kSC4wYtH;kOZ}ky^P}A| z6yeM%#hY4;9uv`jQ-?fu-k3YPh;m6#4hPBEgr4_T^SkbRw_iNuwSTUJ)NJ4RJ2;`F zL>J~RaFQq5r`E|-v7h^ZUsuN4IBTzV-cgXZt-R$NDJSQ2^Tx+V!s+eFyUFl*0APv4qWFE}zb zfPX6WzGTzDC^R2b5w7v8w0y!Uu|!^#9^UnSgr?uy``Yg|{C<7`{Y=*Uj-aEjO zh147doeEtcOns;r5gH|fsd*c)&TaV>a*Q&qlXaQiz7(Rm6u|eaWF43#yz1s?5-&VO?;PAqpqxHl1f+Rd3TBYAC! zwT;Y-X)ifExGOzAe6%2Iv>>k(Ueer@%q{4;_jt6xG_?A&sJydDr&$i0wwRTJfmg{3 z!IH?Dv%!$3Cbh!u$&_%d+j}2H^VS`6YR%NH)7(ObkJ zBL80DyEbvT`nLLrz;sd7d%d{3jIt`P#9!mxVtrlnG9Wd8JmY21^LuYzlV`jR`u%mE zl}_rpGO>8`o0{pRP~0b2D+;5kXhH3}{H9K^;W?ie^H_vGuHx12e>H#OpoKF1DR`&|d%*NEm5C%&%GaE1W^6bz%RCNTx zNZvDV-AmqSGheDuWPXRMQr1 z*Jr2@2I}7S+bz9zCkhAP1$xw%4_sngEiM&exW{NmMgQF8a zqmlT!+%z<$u+OcN&CI%283v`#5B8YM5qqL%KgoYW zTpZ$c6LPCd>Gb$!L67{zAnfmwQ_$I3YG-$?SM1nEYd6nYb8PA?j<+$)KrlC>w}6J; zj9?%*3Y_hlXVJ04}-fRzN}^ zi*x&@y9Fehj6Iq5= zg)Fc|A}4N?jRjfzrX9P24>I?NZ7y@W{&_!I*fLf=``x;6sm{Ztq%*tK?_RZMB%;j4 zzEjzMojp)r%R`-?+*%>8hrB7h;uq2*6OhWS(Ii0xtZj zzo(Y*XON!{%x4JSD1(9)U7lJyeKf?MN3SS$wDCTXDC=p1t3XfGW5Wb&zhwH%QezUp z9PnZQLIJKeH=iy$7iH1n}o7Bl9${CAm&hitN%s_?-kwm@j!Te3b{=0^Q{uj zbz^5`BhYmyH*Yifc%6vh8*Jhu`Kum*v$ld3tNgt6=-||{+!7<(DJt>(#Dd9DRCdjN zU9=d@p7>7Zj5-@TgWI@Uc*u(xc#06?_(nf%j&I#&2~VR_C#Rmb!FV}x%KgzDc_8YFVD>L=Jd*8Y&2Sa?5TI`p{cV?&D$FJ{+&$kuyT^`EQ zc}OLwB)A&nFuSs(G38n>mV)=mw%E`1m0i@BZ3AzMS@%_bqWy7a1J{!p_p$pnWzBa> zjGH61d?H$`>z3$@#wvZMDi@Duib8LwAghjB%W@9vCpT(8q21($JyxSN$9`xyi0-Ge zHEPy+J#)3YjI1&rHhH+Yttlgk4p$68j{xJ8=U3ytAn@mtA?tYNG_wOYELIt zoBS^OXOB`EJ04bKy;|vCf_HQ3AJ%q!LVT}{(v(8)RI)V{XRBEshgPIb3(4EI-r~Li zfK1dnqJoD3GCc(3o6i;n2(WMwD&K?`WpVBVy)6)CflSa9SqR7F5gua*k7LAq;fxoG zFyC|c*^IdR6y0o|aqQSqi*CQZ)85lTUGRAfe`WBM&O+4EyLhA6s|doJ8n+J)y*2xx zoppyv4!R3&KQ}kqpA{C=GI|VaMiIrs?jO5VI*#+Qm3`HlbIl1+*U&HI8^X^@AyX7x zwH`zi{@SU1rsBB!EJcPjczo(P{6Wp$W&VMqNr&!*87V?eW$%gZgOVOs+M;AH*4(Og zzLHz!)uY^#obJI3arjC-UaaE>pQb{?Ijer`MRoRw3RZ7XbPnpfJCEBD!X1AdjS;jW zP+rHMnsleiy%Mb96^#lX#z>h%91W@mZK@Y+e8%2V3o}+(USo`q(UbXFD

boC( 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 literal 198944 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 Jp1E=V-vIN5zDEE6 diff --git a/registry.yaml b/registry.yaml index ce7ce0c..c0c5b2d 100644 --- a/registry.yaml +++ b/registry.yaml @@ -1316,14 +1316,14 @@ - vision - whisper -- title: Using Azure Function and the Microsoft Graph Search API to Query Office365 and SharePoint with ChatGPT - path: examples/chatgpt/sharepoint_azure_function/Using_Azure_Functions_and_Microsoft_Graph_to_Query_SharePoint.md - date: 2024-05-24 - authors: - - maxreid-openai - tags: - - completions - - chatgpt +# - title: Using Azure Function and the Microsoft Graph Search API to Query Office365 and SharePoint with ChatGPT +# path: examples/chatgpt/sharepoint_azure_function/Using_Azure_Functions_and_Microsoft_Graph_to_Query_SharePoint.md +# date: 2024-05-24 +# authors: +# - maxreid-openai +# tags: +# - completions +# - chatgpt - title: GPT Actions library - getting started path: examples/chatgpt/gpt_actions_library/.gpt_action_getting_started.ipynb @@ -1361,6 +1361,33 @@ tags: - gpt-actions-library - chatgpt + +- title: GPT Actions library - Sharepoint (Return Docs) + path: examples/chatgpt/gpt_actions_library/gpt_action_sharepoint_doc.ipynb + date: 2024-05-24 + authors: + - maxreid-openai + tags: + - completions + - chatgpt + +- title: GPT Actions library - Sharepoint (Return Text) + path: examples/chatgpt/gpt_actions_library/gpt_action_sharepoint_text.ipynb + date: 2024-05-24 + authors: + - maxreid-openai + tags: + - completions + - chatgpt + +- title: GPT Actions library (Middleware) - Azure Functions + path: examples/chatgpt/gpt_actions_library/gpt_middleware_azure_function.ipynb + date: 2024-05-24 + authors: + - maxreid-openai + tags: + - completions + - chatgpt - title: GPT Actions library - Canvas LMS path: examples/chatgpt/gpt_actions_library/gpt_action_canvaslms.ipynb @@ -1379,3 +1406,4 @@ tags: - gpt-actions-library - chatgpt + \ No newline at end of file