diff --git a/scenarios/Agents/samples/bing-search/BingSearch.cs b/scenarios/Agents/samples/Dotnet/project-sdk/BingSearch.cs similarity index 100% rename from scenarios/Agents/samples/bing-search/BingSearch.cs rename to scenarios/Agents/samples/Dotnet/project-sdk/BingSearch.cs diff --git a/scenarios/Agents/samples/file-search/FileSearch.cs b/scenarios/Agents/samples/Dotnet/project-sdk/FileSearch.cs similarity index 100% rename from scenarios/Agents/samples/file-search/FileSearch.cs rename to scenarios/Agents/samples/Dotnet/project-sdk/FileSearch.cs diff --git a/scenarios/Agents/samples/function-calling/FunctionCalling.cs b/scenarios/Agents/samples/Dotnet/project-sdk/FunctionCalling.cs similarity index 100% rename from scenarios/Agents/samples/function-calling/FunctionCalling.cs rename to scenarios/Agents/samples/Dotnet/project-sdk/FunctionCalling.cs diff --git a/scenarios/Agents/samples/Dotnet/project-sdk/README.md b/scenarios/Agents/samples/Dotnet/project-sdk/README.md new file mode 100644 index 00000000..e69de29b diff --git a/scenarios/Agents/samples/Dotnet/semantic-kernel/README.md b/scenarios/Agents/samples/Dotnet/semantic-kernel/README.md new file mode 100644 index 00000000..e69de29b diff --git a/scenarios/Agents/samples/Foundry-Portal-UI/README.md b/scenarios/Agents/samples/Foundry-Portal-UI/README.md new file mode 100644 index 00000000..cad7a017 --- /dev/null +++ b/scenarios/Agents/samples/Foundry-Portal-UI/README.md @@ -0,0 +1 @@ +# Foundry Portal UI Samples \ No newline at end of file diff --git a/scenarios/Agents/samples/JavaScript/README.md b/scenarios/Agents/samples/JavaScript/README.md new file mode 100644 index 00000000..30155f75 --- /dev/null +++ b/scenarios/Agents/samples/JavaScript/README.md @@ -0,0 +1 @@ +# Agent JavaScript Samples diff --git a/scenarios/Agents/samples/Python/project-sdk/README.md b/scenarios/Agents/samples/Python/project-sdk/README.md new file mode 100644 index 00000000..b01bd0aa --- /dev/null +++ b/scenarios/Agents/samples/Python/project-sdk/README.md @@ -0,0 +1,24 @@ +# Azure Agents Samples - Python Project SDK + +## Tools + +### Code Interpreter + +* [Code Interpreter tool sample](./code-interpreter.py) + +The Code Interpreter tool allows the Agent to write and execute Python code in a sandboxed environment. With the Code Interpreter enabled, your Agent can iteratively run code to solve complex coding, mathematical, and data analysis problems. + +### File Search + +* [File Search tool sample](./file-search.py) +File Search augments the Agent with knowledge from outside its model, such as proprietary product information or documents provided by your users. + +To access your files, the file search tool uses the vector store object. Upload your files and create a vector store to contain them. Once the vector store is created, you should poll its status until all files are out of the in_progress state to ensure that all content has finished processing. The SDK provides helpers for uploading and polling. + + +### Function Calling +* [Python - function calling](./python-function-calling.py) +* [Python - function calling with automatic tool calling](./python-function-calling-toolset.py) +* [Python - function calling with streaming](./python-function-calling-streaming.py) + +To use function calling, you need a function defined that can be called by the AI Agent service. You can find an example in the [user_functions.py](./user_functions.py) file in this folder. diff --git a/scenarios/Agents/samples/bing-search/bing-python.py b/scenarios/Agents/samples/Python/project-sdk/bing-python.py similarity index 100% rename from scenarios/Agents/samples/bing-search/bing-python.py rename to scenarios/Agents/samples/Python/project-sdk/bing-python.py diff --git a/scenarios/Agents/samples/code-interpreter/python-code-interpreter.py b/scenarios/Agents/samples/Python/project-sdk/code-interpreter.py similarity index 100% rename from scenarios/Agents/samples/code-interpreter/python-code-interpreter.py rename to scenarios/Agents/samples/Python/project-sdk/code-interpreter.py diff --git a/scenarios/Agents/samples/file-search/python-file-search.py b/scenarios/Agents/samples/Python/project-sdk/file-search.py similarity index 100% rename from scenarios/Agents/samples/file-search/python-file-search.py rename to scenarios/Agents/samples/Python/project-sdk/file-search.py diff --git a/scenarios/Agents/samples/function-calling/readme.md b/scenarios/Agents/samples/Python/project-sdk/function-calling/readme.md similarity index 100% rename from scenarios/Agents/samples/function-calling/readme.md rename to scenarios/Agents/samples/Python/project-sdk/function-calling/readme.md diff --git a/scenarios/Agents/samples/investment_advisor/.env.example b/scenarios/Agents/samples/Python/project-sdk/investment_advisor/.env.example similarity index 100% rename from scenarios/Agents/samples/investment_advisor/.env.example rename to scenarios/Agents/samples/Python/project-sdk/investment_advisor/.env.example diff --git a/scenarios/Agents/samples/investment_advisor/README.md b/scenarios/Agents/samples/Python/project-sdk/investment_advisor/README.md similarity index 100% rename from scenarios/Agents/samples/investment_advisor/README.md rename to scenarios/Agents/samples/Python/project-sdk/investment_advisor/README.md diff --git a/scenarios/Agents/samples/investment_advisor/agent-investment_advisor.ipynb b/scenarios/Agents/samples/Python/project-sdk/investment_advisor/agent-investment_advisor.ipynb similarity index 100% rename from scenarios/Agents/samples/investment_advisor/agent-investment_advisor.ipynb rename to scenarios/Agents/samples/Python/project-sdk/investment_advisor/agent-investment_advisor.ipynb diff --git a/scenarios/Agents/samples/investment_advisor/data/investment_portfolio.csv b/scenarios/Agents/samples/Python/project-sdk/investment_advisor/data/investment_portfolio.csv similarity index 100% rename from scenarios/Agents/samples/investment_advisor/data/investment_portfolio.csv rename to scenarios/Agents/samples/Python/project-sdk/investment_advisor/data/investment_portfolio.csv diff --git a/scenarios/Agents/samples/investment_advisor/requirements.txt b/scenarios/Agents/samples/Python/project-sdk/investment_advisor/requirements.txt similarity index 100% rename from scenarios/Agents/samples/investment_advisor/requirements.txt rename to scenarios/Agents/samples/Python/project-sdk/investment_advisor/requirements.txt diff --git a/scenarios/Agents/samples/function-calling/python-function-calling-streaming.py b/scenarios/Agents/samples/Python/project-sdk/python-function-calling-streaming.py similarity index 100% rename from scenarios/Agents/samples/function-calling/python-function-calling-streaming.py rename to scenarios/Agents/samples/Python/project-sdk/python-function-calling-streaming.py diff --git a/scenarios/Agents/samples/function-calling/python-function-calling-toolset.py b/scenarios/Agents/samples/Python/project-sdk/python-function-calling-toolset.py similarity index 100% rename from scenarios/Agents/samples/function-calling/python-function-calling-toolset.py rename to scenarios/Agents/samples/Python/project-sdk/python-function-calling-toolset.py diff --git a/scenarios/Agents/samples/function-calling/python-function-calling.py b/scenarios/Agents/samples/Python/project-sdk/python-function-calling.py similarity index 100% rename from scenarios/Agents/samples/function-calling/python-function-calling.py rename to scenarios/Agents/samples/Python/project-sdk/python-function-calling.py diff --git a/scenarios/Agents/samples/sales-analyst/.env.example b/scenarios/Agents/samples/Python/project-sdk/sales-analyst/.env.example similarity index 100% rename from scenarios/Agents/samples/sales-analyst/.env.example rename to scenarios/Agents/samples/Python/project-sdk/sales-analyst/.env.example diff --git a/scenarios/Agents/samples/sales-analyst/README.md b/scenarios/Agents/samples/Python/project-sdk/sales-analyst/README.md similarity index 100% rename from scenarios/Agents/samples/sales-analyst/README.md rename to scenarios/Agents/samples/Python/project-sdk/sales-analyst/README.md diff --git a/scenarios/Agents/samples/sales-analyst/agent-sales-analyst.ipynb b/scenarios/Agents/samples/Python/project-sdk/sales-analyst/agent-sales-analyst.ipynb similarity index 100% rename from scenarios/Agents/samples/sales-analyst/agent-sales-analyst.ipynb rename to scenarios/Agents/samples/Python/project-sdk/sales-analyst/agent-sales-analyst.ipynb diff --git a/scenarios/Agents/samples/sales-analyst/data/SalesOrder_43659.xlsx b/scenarios/Agents/samples/Python/project-sdk/sales-analyst/data/SalesOrder_43659.xlsx similarity index 100% rename from scenarios/Agents/samples/sales-analyst/data/SalesOrder_43659.xlsx rename to scenarios/Agents/samples/Python/project-sdk/sales-analyst/data/SalesOrder_43659.xlsx diff --git a/scenarios/Agents/samples/sales-analyst/data/SalesOrder_43661.xlsx b/scenarios/Agents/samples/Python/project-sdk/sales-analyst/data/SalesOrder_43661.xlsx similarity index 100% rename from scenarios/Agents/samples/sales-analyst/data/SalesOrder_43661.xlsx rename to scenarios/Agents/samples/Python/project-sdk/sales-analyst/data/SalesOrder_43661.xlsx diff --git a/scenarios/Agents/samples/sales-analyst/data/SalesOrder_43662.xlsx b/scenarios/Agents/samples/Python/project-sdk/sales-analyst/data/SalesOrder_43662.xlsx similarity index 100% rename from scenarios/Agents/samples/sales-analyst/data/SalesOrder_43662.xlsx rename to scenarios/Agents/samples/Python/project-sdk/sales-analyst/data/SalesOrder_43662.xlsx diff --git a/scenarios/Agents/samples/sales-analyst/data/SalesOrder_43665.xlsx b/scenarios/Agents/samples/Python/project-sdk/sales-analyst/data/SalesOrder_43665.xlsx similarity index 100% rename from scenarios/Agents/samples/sales-analyst/data/SalesOrder_43665.xlsx rename to scenarios/Agents/samples/Python/project-sdk/sales-analyst/data/SalesOrder_43665.xlsx diff --git a/scenarios/Agents/samples/sales-analyst/requirements.txt b/scenarios/Agents/samples/Python/project-sdk/sales-analyst/requirements.txt similarity index 100% rename from scenarios/Agents/samples/sales-analyst/requirements.txt rename to scenarios/Agents/samples/Python/project-sdk/sales-analyst/requirements.txt diff --git a/scenarios/Agents/samples/tracing/async/agents_basics_async_with_azure_monitor_tracing.py b/scenarios/Agents/samples/Python/project-sdk/tracing/async/agents_basics_async_with_azure_monitor_tracing.py similarity index 100% rename from scenarios/Agents/samples/tracing/async/agents_basics_async_with_azure_monitor_tracing.py rename to scenarios/Agents/samples/Python/project-sdk/tracing/async/agents_basics_async_with_azure_monitor_tracing.py diff --git a/scenarios/Agents/samples/tracing/async/agents_basics_async_with_console_tracing.py b/scenarios/Agents/samples/Python/project-sdk/tracing/async/agents_basics_async_with_console_tracing.py similarity index 100% rename from scenarios/Agents/samples/tracing/async/agents_basics_async_with_console_tracing.py rename to scenarios/Agents/samples/Python/project-sdk/tracing/async/agents_basics_async_with_console_tracing.py diff --git a/scenarios/Agents/samples/tracing/readme.md b/scenarios/Agents/samples/Python/project-sdk/tracing/readme.md similarity index 100% rename from scenarios/Agents/samples/tracing/readme.md rename to scenarios/Agents/samples/Python/project-sdk/tracing/readme.md diff --git a/scenarios/Agents/samples/tracing/sync/agents_basics_with_azure_monitor_tracing.py b/scenarios/Agents/samples/Python/project-sdk/tracing/sync/agents_basics_with_azure_monitor_tracing.py similarity index 100% rename from scenarios/Agents/samples/tracing/sync/agents_basics_with_azure_monitor_tracing.py rename to scenarios/Agents/samples/Python/project-sdk/tracing/sync/agents_basics_with_azure_monitor_tracing.py diff --git a/scenarios/Agents/samples/tracing/sync/agents_basics_with_console_tracing.py b/scenarios/Agents/samples/Python/project-sdk/tracing/sync/agents_basics_with_console_tracing.py similarity index 100% rename from scenarios/Agents/samples/tracing/sync/agents_basics_with_console_tracing.py rename to scenarios/Agents/samples/Python/project-sdk/tracing/sync/agents_basics_with_console_tracing.py diff --git a/scenarios/Agents/samples/tracing/sync/agents_functions_with_azure_monitor_tracing.py b/scenarios/Agents/samples/Python/project-sdk/tracing/sync/agents_functions_with_azure_monitor_tracing.py similarity index 100% rename from scenarios/Agents/samples/tracing/sync/agents_functions_with_azure_monitor_tracing.py rename to scenarios/Agents/samples/Python/project-sdk/tracing/sync/agents_functions_with_azure_monitor_tracing.py diff --git a/scenarios/Agents/samples/tracing/sync/agents_functions_with_console_tracing.py b/scenarios/Agents/samples/Python/project-sdk/tracing/sync/agents_functions_with_console_tracing.py similarity index 100% rename from scenarios/Agents/samples/tracing/sync/agents_functions_with_console_tracing.py rename to scenarios/Agents/samples/Python/project-sdk/tracing/sync/agents_functions_with_console_tracing.py diff --git a/scenarios/Agents/samples/tracing/sync/agents_stream_eventhandler_with_azure_monitor_tracing.py b/scenarios/Agents/samples/Python/project-sdk/tracing/sync/agents_stream_eventhandler_with_azure_monitor_tracing.py similarity index 100% rename from scenarios/Agents/samples/tracing/sync/agents_stream_eventhandler_with_azure_monitor_tracing.py rename to scenarios/Agents/samples/Python/project-sdk/tracing/sync/agents_stream_eventhandler_with_azure_monitor_tracing.py diff --git a/scenarios/Agents/samples/tracing/sync/agents_stream_eventhandler_with_console_tracing.py b/scenarios/Agents/samples/Python/project-sdk/tracing/sync/agents_stream_eventhandler_with_console_tracing.py similarity index 100% rename from scenarios/Agents/samples/tracing/sync/agents_stream_eventhandler_with_console_tracing.py rename to scenarios/Agents/samples/Python/project-sdk/tracing/sync/agents_stream_eventhandler_with_console_tracing.py diff --git a/scenarios/Agents/samples/function-calling/user_functions.py b/scenarios/Agents/samples/Python/project-sdk/user_functions.py similarity index 100% rename from scenarios/Agents/samples/function-calling/user_functions.py rename to scenarios/Agents/samples/Python/project-sdk/user_functions.py diff --git a/scenarios/Agents/samples/Python/semantic-kernel/README.md b/scenarios/Agents/samples/Python/semantic-kernel/README.md new file mode 100644 index 00000000..a81456c5 --- /dev/null +++ b/scenarios/Agents/samples/Python/semantic-kernel/README.md @@ -0,0 +1,3 @@ +# Azure Agents Samples - Python Semantic Kernel SDK + +## Tools diff --git a/scenarios/Agents/samples/TypeScript/README.md b/scenarios/Agents/samples/TypeScript/README.md new file mode 100644 index 00000000..0ec3473a --- /dev/null +++ b/scenarios/Agents/samples/TypeScript/README.md @@ -0,0 +1 @@ +# Agent TypeScript Samples diff --git a/scenarios/Agents/samples/bing-search/bingsearch_arm.json b/scenarios/Agents/samples/Unsorted-samples/bing-search/bingsearch_arm.json similarity index 100% rename from scenarios/Agents/samples/bing-search/bingsearch_arm.json rename to scenarios/Agents/samples/Unsorted-samples/bing-search/bingsearch_arm.json diff --git a/scenarios/Agents/samples/bing-search/bingsearch_para.json b/scenarios/Agents/samples/Unsorted-samples/bing-search/bingsearch_para.json similarity index 100% rename from scenarios/Agents/samples/bing-search/bingsearch_para.json rename to scenarios/Agents/samples/Unsorted-samples/bing-search/bingsearch_para.json diff --git a/scenarios/Agents/samples/bing-search/readme.md b/scenarios/Agents/samples/Unsorted-samples/bing-search/readme.md similarity index 100% rename from scenarios/Agents/samples/bing-search/readme.md rename to scenarios/Agents/samples/Unsorted-samples/bing-search/readme.md diff --git a/scenarios/Agents/samples/code-interpreter/readme.md b/scenarios/Agents/samples/code-interpreter/readme.md deleted file mode 100644 index e47cec95..00000000 --- a/scenarios/Agents/samples/code-interpreter/readme.md +++ /dev/null @@ -1,62 +0,0 @@ ---- -page_type: sample - -languages: -- Python - -products: -- ai-services -- azure-openai - -description: ---- - -# Code interpreter -Code Interpreter allows the Agent to write and run Python code in a sandboxed execution environment. With Code Interpreter enabled, your Agent can run code iteratively to solve more challenging code, math, and data analysis problems. - - -## Examples - -Run the code samples below and view the output. - ->[!NOTE] -> Be sure that you've [installed the SDK](../README.md#install-the-sdk-package) for your language. - -* [Python](./python-code-interpreter.py) - -# Additional samples - -* [Math tutor](https://github.com/openai/openai-cookbook/blob/main/examples/data/oai_docs/tool-code-interpreter.txt) - - -## Supported file types - -|File format|MIME Type| -|---|---| -|.c| text/x-c | -|.cpp|text/x-c++ | -|.csv|application/csv| -|.docx|application/vnd.openxmlformats-officedocument.wordprocessingml.document| -|.html|text/html| -|.java|text/x-java| -|.json|application/json| -|.md|text/markdown| -|.pdf|application/pdf| -|.php|text/x-php| -|.pptx|application/vnd.openxmlformats-officedocument.presentationml.presentation| -|.py|text/x-python| -|.py|text/x-script.python| -|.rb|text/x-ruby| -|.tex|text/x-tex| -|.txt|text/plain| -|.css|text/css| -|.jpeg|image/jpeg| -|.jpg|image/jpeg| -|.js|text/javascript| -|.gif|image/gif| -|.png|image/png| -|.tar|application/x-tar| -|.ts|application/typescript| -|.xlsx|application/vnd.openxmlformats-officedocument.spreadsheetml.sheet| -|.xml|application/xml or "text/xml"| -|.zip|application/zip| \ No newline at end of file diff --git a/scenarios/Agents/samples/file-search/readme.md b/scenarios/Agents/samples/file-search/readme.md deleted file mode 100644 index 97e8c3c0..00000000 --- a/scenarios/Agents/samples/file-search/readme.md +++ /dev/null @@ -1,38 +0,0 @@ -# File Search - -File Search augments the Agent with knowledge from outside its model, such as proprietary product information or documents provided by your users. - -To access your files, the file search tool uses the vector store object. Upload your files and create a vector store to contain them. Once the vector store is created, you should poll its status until all files are out of the in_progress state to ensure that all content has finished processing. The SDK provides helpers for uploading and polling. - -### File Sources -- Uploading local files -- [Coming Soon] Azure Blob Storage - -### Basic Agent Setup
-The File Search tool has the same functionality as AOAI Assistants. Microsoft managed search and storage resources are used. -- Uploaded files get stored in Microsoft managed storage -- A vector store is created using a Microsoft managed search resource - -### Standard Agent Setup -The File Search tool uses the Azure AI Search and Azure Blob Storage resources you connected during agent setup. -- Uploaded files get stored in your connected Azure Blob Storage account -- Vector stores get created using your connected Azure AI Seach resource -

- -For both Agent setups, OpenAI handles the entire ingestion process, including automatically parsing and chunking documents, generating and storing embeddings, and utilizing both vector and keyword searches to retrieve relevant content for user queries. - -There is no difference in the code between the two setups; the only variation is in where your files and created vector stores are stored. - -## Examples - -Run the code samples below and view the output. - ->[!NOTE] -> Be sure that you've [installed the SDK](../../quickstart.md#install-the-sdk-package) for your language. - -* [Python](./python-file-search.py) -* [C#](./FileSearch.cs) - -## Additional samples - -* [Python Quart app](https://github.com/Azure-Samples/azureai-assistant-tool/tree/main/samples/FileSearch)