{ "cells": [ { "cell_type": "markdown", "id": "9597802c", "metadata": {}, "source": [ "# OpenAI\n", "\n", "[OpenAI](https://platform.openai.com/docs/introduction) offers a spectrum of models with different levels of power suitable for different tasks.\n", "\n", "This example goes over how to use LangChain to interact with `OpenAI` [models](https://platform.openai.com/docs/models)" ] }, { "cell_type": "code", "execution_count": 1, "id": "5d71df86-8a17-4283-83d7-4e46e7c06c44", "metadata": { "tags": [] }, "outputs": [], "source": [ "# get a token: https://platform.openai.com/account/api-keys\n", "\n", "from getpass import getpass\n", "\n", "OPENAI_API_KEY = getpass()" ] }, { "cell_type": "code", "execution_count": 2, "id": "5472a7cd-af26-48ca-ae9b-5f6ae73c74d2", "metadata": { "tags": [] }, "outputs": [], "source": [ "import os\n", "\n", "os.environ[\"OPENAI_API_KEY\"] = OPENAI_API_KEY" ] }, { "cell_type": "markdown", "id": "129a3275", "metadata": {}, "source": [ "Should you need to specify your organization ID, you can use the following cell. However, it is not required if you are only part of a single organization or intend to use your default organization. You can check your default organization [here](https://platform.openai.com/account/api-keys).\n", "\n", "To specify your organization, you can use this:\n", "```python\n", "OPENAI_ORGANIZATION = getpass()\n", "\n", "os.environ[\"OPENAI_ORGANIZATION\"] = OPENAI_ORGANIZATION\n", "```" ] }, { "cell_type": "code", "execution_count": 3, "id": "6fb585dd", "metadata": { "tags": [] }, "outputs": [], "source": [ "from langchain.llms import OpenAI\n", "from langchain import PromptTemplate, LLMChain" ] }, { "cell_type": "code", "execution_count": 4, "id": "035dea0f", "metadata": { "tags": [] }, "outputs": [], "source": [ "template = \"\"\"Question: {question}\n", "\n", "Answer: Let's think step by step.\"\"\"\n", "\n", "prompt = PromptTemplate(template=template, input_variables=[\"question\"])" ] }, { "cell_type": "code", "execution_count": 5, "id": "3f3458d9", "metadata": { "tags": [] }, "outputs": [], "source": [ "llm = OpenAI()" ] }, { "cell_type": "markdown", "id": "4fc152cd", "metadata": {}, "source": [ "If you manually want to specify your OpenAI API key and/or organization ID, you can use the following:\n", "```python\n", "llm = OpenAI(openai_api_key=\"YOUR_API_KEY\", openai_organization=\"YOUR_ORGANIZATION_ID\")\n", "```\n", "Remove the openai_organization parameter should it not apply to you." ] }, { "cell_type": "code", "execution_count": 6, "id": "a641dbd9", "metadata": { "tags": [] }, "outputs": [], "source": [ "llm_chain = LLMChain(prompt=prompt, llm=llm)" ] }, { "cell_type": "code", "execution_count": 7, "id": "9f844993", "metadata": { "tags": [] }, "outputs": [ { "data": { "text/plain": [ "' Justin Bieber was born in 1994, so the NFL team that won the Super Bowl in 1994 was the Dallas Cowboys.'" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "question = \"What NFL team won the Super Bowl in the year Justin Beiber was born?\"\n", "\n", "llm_chain.run(question)" ] }, { "cell_type": "markdown", "id": "58a9ddb1", "metadata": {}, "source": [ "If you are behind an explicit proxy, you can use the OPENAI_PROXY environment variable to pass through" ] }, { "cell_type": "code", "execution_count": 8, "id": "55142cec", "metadata": {}, "outputs": [], "source": [ "os.environ[\"OPENAI_PROXY\"] = \"http://proxy.yourcompany.com:8080\"" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3.11.1 64-bit", "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.9.7" }, "vscode": { "interpreter": { "hash": "e971737741ff4ec9aff7dc6155a1060a59a8a6d52c757dbbe66bf8ee389494b1" } } }, "nbformat": 4, "nbformat_minor": 5 }