Deploy Seeker search augmented conversational AI on Kubernetes in 5 minutes
Seeker is
- A modular Language Model (LM) that uses a search engine to stay relevant and up-to-date.
- The method is a single transformer that is called iteratively to generate: (i) a search query, (ii) a knowledge sequence, (iii) and a final response.
- When applied to dialogue, it is superior to BlenderBot 2 in terms of consistency, knowledge, factual correctness, and per-turn engagingness.
- When applied to language modeling, it hallucinates less and is more topical than either GPT2 or GPT3, despite having far fewer parameters.
Deploiment
We will use https://github.com/langa-me/helm-charts Helm chart to deploy both the online retrieval API used by Seeker and Seeker itself on Kubernetes.
Unfortunately, the current search API code is not open-sourced, yet, some work needs to be done to make it publicly releasable, but you can still use the Docker image in the meantime.
Deploy the search API that the bot will query:
helm install parlai-search langa-me/parlai-search --set image.repository=langameai/search-engine -n parlai --create-namespace
Here we use Langame search API Docker image.
Write a Dockerfile for the bot:
Build and push to your favorite registry
VERSION="0.0.1"
REGISTRY="my_registry"docker buildx build -t ${REGISTRY}:${VERSION} -t ${REGISTRY}:latest --platform linux/amd64 . -f ./Dockerfiledocker push ${REGISTRY}:${VERSION}
docker push ${REGISTRY}:latest
If you pushed to a public registry, you can skip the following step.
Setting up your Kubernetes namespace to be able to pull from your (private?) registry (OVHCloud or Google Cloud here)
Prepare the Helm configuration used by the bot
Adjust according to your settings and run:
helm install parlai langa-me/parlai -f kubernetes_seeker_400m.yaml --create-namespace -n parlai
Now forward the bot port to your computer:
kubectl get pods -n parlai
kubectl port-forward MY_POD_NAME 8083:80
You can use https://github.com/vi/websocat to start talking to the bot through the WebSocket π.
websocat ws://localhost:8083
Seeker is used in Langame, AI-augmented conversation, join Langame Discord, or install Langame Discord bot in your community β https://langa.me.
By the way, Langame can talk in any language, check the /setup command π.
Have a great day π