llama-index llms openai integration
Project description
LlamaIndex Llms Integration: Openai
Installation
To install the required package, run:
%pip install llama-index-llms-openai
Setup
- Set your OpenAI API key as an environment variable. You can replace
"sk-..."
with your actual API key:
import os
os.environ["OPENAI_API_KEY"] = "sk-..."
Basic Usage
Generate Completions
To generate a completion for a prompt, use the complete
method:
from llama_index.llms.openai import OpenAI
resp = OpenAI().complete("Paul Graham is ")
print(resp)
Chat Responses
To send a chat message and receive a response, create a list of ChatMessage
instances and use the chat
method:
from llama_index.core.llms import ChatMessage
messages = [
ChatMessage(
role="system", content="You are a pirate with a colorful personality."
),
ChatMessage(role="user", content="What is your name?"),
]
resp = OpenAI().chat(messages)
print(resp)
Streaming Responses
Stream Complete
To stream responses for a prompt, use the stream_complete
method:
from llama_index.llms.openai import OpenAI
llm = OpenAI()
resp = llm.stream_complete("Paul Graham is ")
for r in resp:
print(r.delta, end="")
Stream Chat
To stream chat responses, use the stream_chat
method:
from llama_index.llms.openai import OpenAI
from llama_index.core.llms import ChatMessage
llm = OpenAI()
messages = [
ChatMessage(
role="system", content="You are a pirate with a colorful personality."
),
ChatMessage(role="user", content="What is your name?"),
]
resp = llm.stream_chat(messages)
for r in resp:
print(r.delta, end="")
Configure Model
You can specify a particular model when creating the OpenAI
instance:
llm = OpenAI(model="gpt-3.5-turbo")
resp = llm.complete("Paul Graham is ")
print(resp)
messages = [
ChatMessage(
role="system", content="You are a pirate with a colorful personality."
),
ChatMessage(role="user", content="What is your name?"),
]
resp = llm.chat(messages)
print(resp)
Asynchronous Usage
You can also use asynchronous methods for completion:
from llama_index.llms.openai import OpenAI
llm = OpenAI(model="gpt-3.5-turbo")
resp = await llm.acomplete("Paul Graham is ")
print(resp)
Set API Key at a Per-Instance Level
If desired, you can have separate LLM instances use different API keys:
from llama_index.llms.openai import OpenAI
llm = OpenAI(model="gpt-3.5-turbo", api_key="BAD_KEY")
resp = OpenAI().complete("Paul Graham is ")
print(resp)
LLM Implementation example
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file llama_index_llms_openai-0.3.0.tar.gz
.
File metadata
- Download URL: llama_index_llms_openai-0.3.0.tar.gz
- Upload date:
- Size: 13.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.11.10 Darwin/22.3.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 509ddbbda5019f6238fc9874e19fac1f89d9a6c7153f5e7ceb3c10341854dd37 |
|
MD5 | 644b25d9f03fc00e7381d3c922d92c1b |
|
BLAKE2b-256 | ed5edfee5254c6761d2a75f0c592a9d630bc319a3bb76df8a6b62b342c7f1f28 |
File details
Details for the file llama_index_llms_openai-0.3.0-py3-none-any.whl
.
File metadata
- Download URL: llama_index_llms_openai-0.3.0-py3-none-any.whl
- Upload date:
- Size: 13.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.11.10 Darwin/22.3.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0c848aca67ce121f324742c020490d409609aec914a390183ec9c8d10374dff3 |
|
MD5 | e45c35ee8cfcf51a506826ce866275b8 |
|
BLAKE2b-256 | 75afc079b3659336caa42596faf99f676fedecafd825e83553195d97cb42d7cc |