AWeirdDev commited on
Commit
f7934f7
·
1 Parent(s): 30e1193
Files changed (3) hide show
  1. Dockerfile +13 -0
  2. app.py +17 -0
  3. requirements.txt +3 -0
Dockerfile ADDED
@@ -0,0 +1,13 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ FROM python:3.9
2
+
3
+ RUN useradd -m -u 1000 user
4
+ USER user
5
+ ENV PATH="/home/user/.local/bin:$PATH"
6
+
7
+ WORKDIR /app
8
+
9
+ COPY --chown=user ./requirements.txt requirements.txt
10
+ RUN pip install --no-cache-dir --upgrade -r requirements.txt
11
+
12
+ COPY --chown=user . /app
13
+ CMD ["uvicorn", "app:app", "--host", "0.0.0.0", "--port", "7860"]
app.py ADDED
@@ -0,0 +1,17 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import asyncio
2
+ from fastapi import FastAPI
3
+ from fastapi.responses import JSONResponse
4
+ from gradio_client import Client
5
+
6
+ app = FastAPI()
7
+ client = Client("vikhyatk/moondream1")
8
+
9
+
10
+ def get_caption(image: str, question: str):
11
+ result = client.predict(image, question, api_name="/answer_question")
12
+ return result.strip()
13
+
14
+
15
+ @app.post("/caption")
16
+ async def captioning(image: str, question):
17
+ return JSONResponse({"caption": asyncio.to_thread(get_caption, image, question)})
requirements.txt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ fastapi
2
+ uvicorn[standard]
3
+ gradio-client