llama-index llms openllm integration
Project description
LlamaIndex LLM Integration: OpenLLM
Installation
To install the required packages, run:
%pip install llama-index-llms-openllm
!pip install llama-index
Setup
Initialize OpenLLM
First, import the necessary libraries and set up your OpenLLM instance. Replace my-model, https://hostname.com/v1, and na with your model name, API base URL, and API key, respectively:
import os
from typing import List, Optional
from llama_index.llms.openllm import OpenLLM
from llama_index.core.llms import ChatMessage
llm = OpenLLM(
model="my-model", api_base="https://hostname.com/v1", api_key="na"
)
Generate Completions
To generate a completion, use the complete method:
completion_response = llm.complete("To infinity, and")
print(completion_response)
Stream Completions
You can also stream completions using the stream_complete method:
async for it in llm.stream_complete(
"The meaning of time is", max_new_tokens=128
):
print(it, end="", flush=True)
Chat Functionality
OpenLLM supports chat APIs, allowing you to handle conversation-like interactions. Here’s how to use it:
Synchronous Chat
You can perform a synchronous chat by constructing a list of ChatMessage instances:
from llama_index.core.llms import ChatMessage
chat_messages = [
ChatMessage(role="system", content="You are acting as Ernest Hemmingway."),
ChatMessage(role="user", content="Hi there!"),
ChatMessage(role="assistant", content="Yes?"),
ChatMessage(role="user", content="What is the meaning of life?"),
]
for it in llm.chat(chat_messages):
print(it.message.content, flush=True, end="")
Asynchronous Chat
To perform an asynchronous chat, use the astream_chat method:
async for it in llm.astream_chat(chat_messages):
print(it.message.content, flush=True, end="")
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
Close
Hashes for llama_index_llms_openllm-0.3.1.tar.gz
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 | f0323ad5c95f8fba3a4ad3a0770a983bdc29dad6192abccbc5fe1f4ee236fb7c |
|
| MD5 | d98464173cc828036c6c0e14a6a2575e |
|
| BLAKE2b-256 | 25eb9561dc9e22abba2f82a47d237015576b128a68964c80efec83cf11e77305 |
Close
Hashes for llama_index_llms_openllm-0.3.1-py3-none-any.whl
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 | 6b68d93c3ea3d0a655330ae48cb4f3747ca85ef9e2ead5df8d63304c6fee299c |
|
| MD5 | 2920fef78c42a7137a6f9fc10e86eeb4 |
|
| BLAKE2b-256 | 7e596b66a579ceeae5fd8cd83780f5cf5b014f2a4652b3c0d70e242fea5c8b72 |