Skip to content

Commit

Permalink
Openrouter usage example (sgl-project#327)
Browse files Browse the repository at this point in the history
  • Loading branch information
janimo authored Mar 23, 2024
1 parent 30d1784 commit 64ee9c0
Showing 1 changed file with 79 additions and 0 deletions.
79 changes: 79 additions & 0 deletions examples/quick_start/openrouter_example_chat.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
"""
Usage:
export OPENROUTER_API_KEY=sk-******
python3 together_example_chat.py
"""
import sglang as sgl
import os


@sgl.function
def multi_turn_question(s, question_1, question_2):
s += sgl.system("You are a helpful assistant.")
s += sgl.user(question_1)
s += sgl.assistant(sgl.gen("answer_1", max_tokens=256))
s += sgl.user(question_2)
s += sgl.assistant(sgl.gen("answer_2", max_tokens=256))


def single():
state = multi_turn_question.run(
question_1="What is the capital of the United States?",
question_2="List two local attractions.",
)

for m in state.messages():
print(m["role"], ":", m["content"])

print("\n-- answer_1 --\n", state["answer_1"])


def stream():
state = multi_turn_question.run(
question_1="What is the capital of the United States?",
question_2="List two local attractions.",
stream=True,
)

for out in state.text_iter():
print(out, end="", flush=True)
print()


def batch():
states = multi_turn_question.run_batch(
[
{
"question_1": "What is the capital of the United States?",
"question_2": "List two local attractions.",
},
{
"question_1": "What is the capital of France?",
"question_2": "What is the population of this city?",
},
]
)

for s in states:
print(s.messages())


if __name__ == "__main__":
backend = sgl.OpenAI(
model_name="google/gemma-7b-it:free",
base_url="https://openrouter.ai/api/v1",
api_key=os.environ.get("OPENROUTER_API_KEY"),
)
sgl.set_default_backend(backend)

# Run a single request
print("\n========== single ==========\n")
single()

# Stream output
print("\n========== stream ==========\n")
stream()

# Run a batch of requests
print("\n========== batch ==========\n")
batch()

0 comments on commit 64ee9c0

Please sign in to comment.