Skip to content

Commit aad8e36

Browse files
committed
📖 DOC: improve docs
1 parent a82e5e6 commit aad8e36

File tree

1 file changed

+52
-23
lines changed

1 file changed

+52
-23
lines changed

README.md

Lines changed: 52 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -32,8 +32,10 @@ pip install langbase
3232
### 1. Set up your API key
3333

3434
Create a `.env` file and add your [Langbase API Key](https://langbase.com/docs/api-reference/api-keys).
35+
3536
```bash
3637
LANGBASE_API_KEY="your-api-key"
38+
LLM_API_KEY="your-llm-api-key"
3739
```
3840

3941
---
@@ -49,6 +51,7 @@ load_dotenv()
4951

5052
# Get API key from environment variable
5153
langbase_api_key = os.getenv("LANGBASE_API_KEY")
54+
llm_api_key = os.getenv("LLM_API_KEY")
5255

5356
# Initialize the client
5457
lb = Langbase(api_key=langbase_api_key)
@@ -58,57 +61,83 @@ lb = Langbase(api_key=langbase_api_key)
5861

5962
```python
6063
# Simple generation
61-
response = lb.pipes.run(
62-
name="ai-agent",
63-
messages=[{"role": "user", "content": "Tell me about AI"}],
64+
response = lb.agent.run(
65+
input=[{"role": "user", "content": "Tell me about AI"}],
66+
model="openai:gpt-4.1-mini",
67+
api_key=llm_api_key,
6468
)
6569

66-
print(response["completion"])
70+
print(response["output"])
6771
```
6872

6973
---
7074

7175
### 4. Stream text (Simple)
7276

7377
```python
78+
form langbase import get_runner
79+
7480
# Stream text as it's generated
75-
response = lb.pipes.run(
76-
name="ai-agent",
77-
messages=[{"role": "user", "content": "Tell me about AI"}],
81+
response = langbase.agent.run(
82+
input=[{"role": "user", "content": "Tell me about AI"}],
83+
model="openai:gpt-4.1-mini",
84+
api_key=llm_api_key,
7885
stream=True,
7986
)
8087

81-
for text in stream_text(response["stream"]):
82-
print(text, end="", flush=True)
88+
runner = get_runner(response)
89+
90+
for content in runner.text_generator():
91+
print(content, end="", flush=True)
8392
```
8493

8594
### 5. Stream with typed events (Advanced) 🆕
8695

8796
```python
8897
from langbase import StreamEventType, get_typed_runner
8998

90-
# Get streaming response
91-
response = lb.pipes.run(
92-
name="ai-agent",
93-
messages=[{"role": "user", "content": "Tell me about AI"}],
99+
response = langbase.agent.run(
100+
input=[{"role": "user", "content": "What is an AI Engineer?"}],
101+
model="openai:gpt-4.1-mini",
102+
api_key=llm_api_key,
94103
stream=True,
95104
)
96105

97106
# Create typed stream processor
98107
runner = get_typed_runner(response)
99108

100109
# Register event handlers
101-
runner.on(StreamEventType.CONNECT, lambda e:
102-
print(f"✓ Connected to thread: {e['threadId']}"))
110+
runner.on(
111+
StreamEventType.CONNECT,
112+
lambda event: print(f"✓ Connected! Thread ID: {event['threadId']}\n"),
113+
)
103114

104-
runner.on(StreamEventType.CONTENT, lambda e:
105-
print(e["content"], end="", flush=True))
115+
runner.on(
116+
StreamEventType.CONTENT,
117+
lambda event: print(event["content"], end="", flush=True),
118+
)
106119

107-
runner.on(StreamEventType.TOOL_CALL, lambda e:
108-
print(f"\n🔧 Tool: {e['toolCall']['function']['name']}"))
120+
runner.on(
121+
StreamEventType.TOOL_CALL,
122+
lambda event: print(
123+
f"\n🔧 Tool call: {event['toolCall']['function']['name']}"
124+
),
125+
)
109126

110-
runner.on(StreamEventType.END, lambda e:
111-
print(f"\n⏱️ Duration: {e['duration']:.2f}s"))
127+
runner.on(
128+
StreamEventType.COMPLETION,
129+
lambda event: print(f"\n\n✓ Completed! Reason: {event['reason']}"),
130+
)
131+
132+
runner.on(
133+
StreamEventType.ERROR,
134+
lambda event: print(f"\n❌ Error: {event['message']}"),
135+
)
136+
137+
runner.on(
138+
StreamEventType.END,
139+
lambda event: print(f"⏱️ Total duration: {event['duration']:.2f}s"),
140+
)
112141

113142
# Process the stream
114143
runner.process()
@@ -205,9 +234,9 @@ Explore the [examples](./examples) directory for complete working examples:
205234
- [Document processing](./examples/parser/)
206235
- [Workflow automation](./examples/workflow/)
207236

208-
## API Reference
237+
## SDK Reference
209238

210-
For detailed API documentation, visit [langbase.com/docs/sdk](https://langbase.com/docs/sdk).
239+
For detailed SDK documentation, visit [langbase.com/docs/sdk](https://langbase.com/docs/sdk).
211240

212241
## Contributing
213242

0 commit comments

Comments
 (0)