ollama local chat completion #11

Merged
crate merged 2 commits from ollama-gtx into main 2026-06-05 19:47:44 +00:00
3 changed files with 27 additions and 20 deletions
Showing only changes of commit 0ef3fd1e82 - Show all commits

View File

@@ -117,30 +117,30 @@ async def garfbot_qr(ctx, *, text):
f"QR Code Request - User: {ctx.author.name}, Server: {ctx.guild.name}, Text: {text}"
)
if len(text) > 1000:
await ctx.send("❌ Text too long! Maximum 1000 characters.")
await ctx.reply("❌ Text too long! Maximum 1000 characters.")
else:
try:
qr_code = await generate_qr(text)
sendfile = discord.File(fp=qr_code, filename="qrcode.png")
await ctx.send(file=sendfile)
await ctx.reply(file=sendfile)
except Exception as e:
logger.error(e)
await ctx.send(e)
await ctx.reply(e)
@garfbot.command(name="wiki")
async def garfbot_wiki(ctx, *, query):
summary = await garfield.wikisum(query)
await ctx.send(summary)
await ctx.reply(summary)
@garfbot.command(name="shop")
async def garfbot_shop(ctx, *, query):
try:
response = kroger.garfshop(query)
await ctx.send(response)
await ctx.reply(response)
except Exception as e:
await ctx.send(f"`GarfBot Error: {str(e)}`")
await ctx.reply(f"`GarfBot Error: {str(e)}`")
@garfbot.command(name="weather")
@@ -153,11 +153,12 @@ async def garfchat(ctx, *, prompt):
if "is this true" in prompt.lower():
messages = [msg async for msg in ctx.channel.history(limit=2)]
prompt = messages[1].content
prompt = f"Is this true: {prompt}"
answer = await garfield.generate_chat(prompt)
logger.info(
f"Chat Request - User: {ctx.author.name}, Server: {ctx.guild.name}, Prompt: {prompt}"
)
await ctx.send(answer)
await ctx.reply(answer)
# @garfbot.command(name="pic")
@@ -165,7 +166,7 @@ async def garfchat(ctx, *, prompt):
# logger.info(
# f"Image Request - User: {ctx.author.name}, Server: {ctx.guild.name}, Prompt: {prompt}"
# )
# await ctx.send(f"`Please wait... image generation queued: {prompt}`")
# await ctx.reply(f"`Please wait... image generation queued: {prompt}`")
# await garfield.garfpic(ctx, prompt)

View File

@@ -11,8 +11,9 @@ from garfpy import logger
class GarfAI:
def __init__(self):
self.openaikey = config.OPENAI_TOKEN
self.baseurl = config.BASE_URL
self.openaikey = config.OPENAI_TOKEN
self.sysprompt = config.SYSTEM_PROMPT
self.txtmodel = config.TXT_MODEL
self.imgmodel = config.IMG_MODEL
self.image_request_queue = asyncio.Queue()
@@ -90,12 +91,12 @@ class GarfAI:
messages=[
{
"role": "system",
"content": "You are Garfield the cat. You are deeply, catastrophically sarcastic. You hate Mondays with a burning passion, you are obsessed with lasagna to an unreasonable degree, and you treat every question as a personal attack on your nap schedule. Respond dramatically. Use ALL CAPS for emphasis occasionally. Reference lasagna at least once no matter what.",
"content": self.sysprompt,
},
{"role": "user", "content": f"{question}"},
{"role": "user", "content": question},
],
max_tokens=400,
temperature=1.5,
temperature=1.2,
)
answer = str(response.choices[0].message.content)
return answer.replace("an AI language model", "a cartoon animal")