llm-test / app.py
krammnic's picture
Update app.py
d920417 verified
from typing import Union
from fastapi import FastAPI
import asyncio
from groq import Groq, AsyncGroq
from fastapi import FastAPI, File, UploadFile
from fastapi.responses import HTMLResponse
import shutil
import os
# client = AsyncGroq(
# api_key="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",
# )
# SYSTEM_PROMPT = """
# Ты ассистент, помогай людям!
# """
app = FastAPI()
import google.generativeai as genai
import os
genai.configure(api_key="AIzaSyBGhEOy-JYMzGtTcRjBjP51OGR168WKRFw")
# client = AsyncGroq(
# api_key="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",
# )
# messages=messages,
# model="llama3-70b-8192",
# )
# return chat_completion.choices[0].message.content
@app.post("/upload-image/{prompt}")
async def upload_image(prompt: str, file: UploadFile = File(...)):
os.makedirs("uploads", exist_ok=True)
file_location = f"uploads/{file.filename}"
with open(file_location, "wb") as buffer:
shutil.copyfileobj(file.file, buffer)
myfile = genai.upload_file(file_location)
model = genai.GenerativeModel("gemini-1.5-pro-latest")
result = model.generate_content(
[myfile, "\n\n", prompt]
)
return result.text
# @app.post("/get_response")
# async def read_root(messages: list[dict]):
# messages.insert(0, {
# "role": "system",
# "content": SYSTEM_PROMPT
# }
# )
# chat_completion = await client.chat.completions.create(
# messages=messages,
# model="llama3-70b-8192",
# )
# return chat_completion.choices[0].message.content