plugbear 0.1.0

Last updated:

0 purchases

plugbear 0.1.0 Image
plugbear 0.1.0 Images
Add to Cart

Description:

plugbear 0.1.0

PlugBear Python SDK
Connect a custom LLM to PlugBear through a web server.
FastAPI
Installation
To install the PlugBear Python SDK, run the following command:
pip install 'plugbear[fastapi]'

Usage
Here's a simple example to get you started:
import contextlib

import plugbear.fastapi
from fastapi import FastAPI

PLUGBEAR_API_KEY = ""
PLUGBEAR_ENDPOINT = "/plugbear"


@contextlib.asynccontextmanager
async def lifespan(app: FastAPI):
await plugbear.fastapi.register(
app,
llm_func=some_llm,
api_key=PLUGBEAR_API_KEY,
endpoint=PLUGBEAR_ENDPOINT,
)
yield


app = FastAPI(lifespan=lifespan)


async def some_llm(context: plugbear.fastapi.Request) -> str:
# template prompt using `context` to your own LLM
# and return result
result: str = ...
return result


For versions below 0.93.0
import plugbear.fastapi
from fastapi import FastAPI

app = FastAPI()
PLUGBEAR_API_KEY = ""
PLUGBEAR_ENDPOINT = "/plugbear"


@app.on_event("startup")
async def _startup():
await plugbear.fastapi.register(
app,
llm_func=some_llm,
api_key=PLUGBEAR_API_KEY,
endpoint=PLUGBEAR_ENDPOINT,
)


async def some_llm(context: plugbear.fastapi.Request) -> str:
# template prompt using `context` to your own LLM
# and return result
result: str = ...
return result


Other Web server frameworks
Although it does not yet provide an interface as convenient as FastAPI, it can be directly linked to PlugBear.
Installation
pip install plugbear

Usage
Taking Django as an example, it looks like this:
settings.py
import plugbear
from asgiref.sync import async_to_sync

PLUGBEAR_API_KEY = ""
PLUGBEAR_ENDPOINT = "/plugbear"

pb = async_to_sync(plugbear.PlugBear.init(api_key=PLUGBEAR_API_KEY))

urls.py
from django.conf import settings
from django.urls import path

from . import views

urlpatterns = [
path(settings.PLUGBEAR_ENDPOINT, views.handle_plugbear, name="plugbear"),
]

views.py
import plugbear
from dacite import from_dict
from django.http import HttpResponse


def handle_plugbear(request):
context = from_dict(data_class=plugbear.Request, data=request.data)
result = some_llm(context)
return HttpResponse(result)

def some_llm(context: plugbear.Request) -> str:
# template prompt using `context` to your own LLM
# and return result
result: str = ...
return result

License:

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Customer Reviews

There are no reviews.