import redis
from ollama import Client
# Initialize Redis client
redis-client = redis.StrictRedis(host='redishost', port=6379, db=0)
# Initialize Ollama client
client = Client(host='http://ollama:7869')
# Subscribe to a Redis channel
pubsub = redis-client.pubsub()
pubsub.subscribe('my-channel') # Replace with your actual channel
for message in pubsub.listen():
if message['type'] == 'message':
text = message['data']
print("Received:", text)
# Summarize using Ollama
response = client.chat(
model='openthinker', # Replace with your model
messages=[
{'role': 'system', 'content': 'Summarize clearly and concisely:'},
{'role': 'user', 'content': text}
],
stream=False
)
summary = response['message']['content']
print("\n--- Summary ---\n", summary, "\n")
services:
ollama:
image: ollama/ollama:latest
pull_policy: always
container_name: ollama
volumes:
- /usr/share/ollama/.ollama:/root/.ollama
tty: true
restart: unless-stopped
ports:
- 7869:11434
environment:
- OLLAMA_KEEP_ALIVE=24h
deploy:
resources:
reservations:
devices:
- driver: nvidia
device_ids: ["0"]
capabilities: [gpu]
---