{"id":26712437,"url":"https://github.com/jplane/foundry-agents","last_synced_at":"2025-03-27T11:30:15.395Z","repository":{"id":284227581,"uuid":"953515293","full_name":"jplane/foundry-agents","owner":"jplane","description":null,"archived":false,"fork":false,"pushed_at":"2025-03-24T20:15:26.000Z","size":11,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-24T20:35:36.462Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Jupyter Notebook","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jplane.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-03-23T14:49:27.000Z","updated_at":"2025-03-24T19:52:38.000Z","dependencies_parsed_at":"2025-03-24T20:45:41.468Z","dependency_job_id":null,"html_url":"https://github.com/jplane/foundry-agents","commit_stats":null,"previous_names":["jplane/foundry-agents"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jplane%2Ffoundry-agents","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jplane%2Ffoundry-agents/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jplane%2Ffoundry-agents/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jplane%2Ffoundry-agents/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jplane","download_url":"https://codeload.github.com/jplane/foundry-agents/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245835770,"owners_count":20680264,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-03-27T11:30:14.692Z","updated_at":"2025-03-27T11:30:15.378Z","avatar_url":"https://github.com/jplane.png","language":"Jupyter Notebook","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Using Azure AI Agent Service\n\nThis repo demonstrates a few simple examples of AI agents using tools like [Python function calls](https://learn.microsoft.com/en-us/azure/ai-services/agents/how-to/tools/function-calling?tabs=python\u0026pivots=code-example), [vectorized file search](https://learn.microsoft.com/en-us/azure/ai-services/agents/how-to/tools/file-search?tabs=python\u0026pivots=upload-files-code-examples), and [Open API invocation](https://learn.microsoft.com/en-us/azure/ai-services/agents/how-to/tools/openapi-spec?tabs=python\u0026pivots=code-example).\n\n## Prerequisites\n\n- Azure subscription\n- Azure AI Foundry [hub](https://learn.microsoft.com/en-us/azure/ai-foundry/how-to/create-azure-ai-resource?tabs=portal) and [project](https://learn.microsoft.com/en-us/azure/ai-foundry/how-to/create-projects?tabs=ai-studio)\n    - [choose a region that supports the Azure AI Agent Service](https://learn.microsoft.com/en-us/azure/ai-services/agents/concepts/model-region-support)\n    - each user must have **Storage Blob Data Contributor** and **Azure AI Developer** RBAC roles assigned at the resource group level\n- Visual Studio Code or Cursor\n- [Dev Container extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-containers)\n\n## Setup\n\n- ensure you have a [supported model](https://learn.microsoft.com/en-us/azure/ai-services/agents/concepts/model-region-support) deployed in your Foundry hub... the example notebooks use `gpt-4o` but you're free to change that\n\n- clone this repo\n\n- open the repo in Visual Studio Code or Cursor\n\n- open the command palette and select **Dev Containers: Reopen in Container**. This will build the dev container and install the required dependencies\n\n- [obtain your Foundry project connection string](https://learn.microsoft.com/en-us/azure/ai-foundry/quickstarts/get-started-code?tabs=linux#insert-your-connection-string)\n\n- copy [./src/notebooks/.env.example](./src/notebooks/.env.example) to `./src/notebooks/.env` and add the connection string\n\n- log into the Azure CLI and select your target subscription\n\n    ```bash\n    az login\n    az account set --subscription \u003cyour-subscription-id\u003e\n    ```\n\n## Azure AI Agent with Python Function Calls\n\nThis sample illustrates an agent configured with a local Python function as a tool. The agent calls the function to perform a task like getting the weather for a specific location.\n\n- [notebook](./src/notebooks/agent_with_local_function_call.ipynb)\n\n## Azure AI Agent with Vectorized File Search\n\nThis sample illustrates an agent configured with a vectorized file search tool. The agent finds content from the files relevant to a given goal or user request, and uses the content to synthesize a response to the user (including annotations to the original source text).\n\n- [notebook](./src/notebooks/agent_with_file_search.ipynb)\n\n## Azure AI Agent with OpenAPI Invocation\n\nThis sample illustrates an agent configured with an OpenAPI invocation tool. The agent issues a REST API call to gather relevant information and synthesize a response to the user.\n\n\u003e _This example requires the [api](./src/api) directory is deployed to a public endpoint. A recommended way to do this is using [Azure Container Apps](https://learn.microsoft.com/en-us/azure/container-apps/overview); if you're using Visual Studio Code, the [extension](https://marketplace.visualstudio.com/items?itemName=ms-azuretools.vscode-azurecontainerapps) makes [deployment](https://learn.microsoft.com/en-us/azure/container-apps/deploy-visual-studio-code) easy. The extension is already installed in the Dev Container. You can also deploy without VS Code, using the [Azure CLI](https://learn.microsoft.com/en-us/azure/container-apps/quickstart-code-to-cloud?tabs=bash%2Ccsharp)._\n\n- [notebook](./src/notebooks/agent_with_open_api.ipynb)\n\n## Azure AI Agent with multiple tools\n\nThis sample illustrates an agent configured with multiple tools. The agent uses the tools to gather information from different sources and synthesize a response to the user.\n\n- [notebook](./src/notebooks/agent_with_multiple_tools.ipynb)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjplane%2Ffoundry-agents","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjplane%2Ffoundry-agents","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjplane%2Ffoundry-agents/lists"}