{ "cells": [ { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "# Setup\n", "\n", "**Step 1**: Import Semantic Kernel SDK from pypi.org" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "!python -m pip install semantic-kernel==0.3.10.dev0" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "import semantic_kernel as sk\n", "\n", "kernel = sk.Kernel()" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "## Option 1: using OpenAI\n", "\n", "**Step 2**: Add your [Open AI Key](https://openai.com/api/) key to a `.env` file in the same folder (org Id only if you have multiple orgs):\n", "\n", "```\n", "OPENAI_API_KEY=\"sk-...\"\n", "OPENAI_ORG_ID=\"\"\n", "```\n", "\n", "and add OpenAI Chat Completion to the kernel:" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "from semantic_kernel.connectors.ai.open_ai import OpenAIChatCompletion\n", "\n", "api_key, org_id = sk.openai_settings_from_dot_env()\n", "\n", "kernel.add_chat_service(\"chat-gpt\", OpenAIChatCompletion(\"gpt-3.5-turbo\", api_key, org_id))" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "## Option 2: using Azure OpenAI\n", "\n", "**Step 2**: Add your [Azure Open AI Service key](https://learn.microsoft.com/azure/cognitive-services/openai/quickstart?pivots=programming-language-studio) settings to a `.env` file in the same folder:\n", "\n", "```\n", "AZURE_OPENAI_API_KEY=\"...\"\n", "AZURE_OPENAI_ENDPOINT=\"https://...\"\n", "AZURE_OPENAI_DEPLOYMENT_NAME=\"...\"\n", "```\n", "\n", "and add Azure OpenAI Chat Completion to the kernel:" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "from semantic_kernel.connectors.ai.open_ai import AzureChatCompletion\n", "\n", "deployment, api_key, endpoint = sk.azure_openai_settings_from_dot_env()\n", "\n", "kernel.add_chat_service(\"chat_completion\", AzureChatCompletion(deployment, endpoint, api_key))\n" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "# Run a Semantic Function\n", "\n", "**Step 3**: Load a Skill and run a semantic function:" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "skill = kernel.import_semantic_skill_from_directory(\"../../samples/skills\", \"FunSkill\")\n", "joke_function = skill[\"Joke\"]\n", "\n", "print(joke_function(\"time travel to dinosaur age\"))" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.10.10" } }, "nbformat": 4, "nbformat_minor": 2 }