From 1d273f8df3445844e5064dd5ca035b5e5c837e09 Mon Sep 17 00:00:00 2001 From: songw Date: Mon, 17 Apr 2023 17:37:27 +0800 Subject: [PATCH] add build.yaml Dockerfile app.py requirements.txt --- .gitea/workflows/build.yaml | 47 +++++++++++++++++++++++++++++++++++ Dockerfile | 10 ++++++++ app.py | 49 +++++++++++++++++++++++++++++++++++++ requirements.txt | 3 +++ 4 files changed, 109 insertions(+) create mode 100644 .gitea/workflows/build.yaml create mode 100644 Dockerfile create mode 100644 app.py create mode 100644 requirements.txt diff --git a/.gitea/workflows/build.yaml b/.gitea/workflows/build.yaml new file mode 100644 index 0000000..1966567 --- /dev/null +++ b/.gitea/workflows/build.yaml @@ -0,0 +1,47 @@ +name: Build +run-name: ${{ github.actor }} is upgrade release πŸš€ +on: [push] +env: + REPOSITORY: ${{ github.repository }} + COMMIT_ID: ${{ github.sha }} +jobs: + Build-Deploy-Actions: + runs-on: ubuntu-latest + steps: + - run: echo "πŸŽ‰ The job was automatically triggered by a ${{ github.event_name }} event." + - run: echo "🐧 This job is now running on a ${{ runner.os }} server hosted by Gitea!" + - run: echo "πŸ”Ž The name of your branch is ${{ github.ref }} and your repository is ${{ github.repository }}." + - name: Check out repository code + uses: actions/checkout@v3 + - + name: Setup Git LFS + run: | + git lfs install + git lfs fetch + git lfs checkout + - name: List files in the repository + run: | + ls ${{ github.workspace }} + - + name: Docker Image Info + id: image-info + run: | + echo "::set-output name=image_name::$(echo $REPOSITORY | tr '[:upper:]' '[:lower:]')" + echo "::set-output name=image_tag::${COMMIT_ID:0:10}" + - + name: Login to Docker Hub + uses: docker/login-action@v2 + with: + registry: artifacts.iflytek.com + username: ${{ secrets.DOCKERHUB_USERNAME }} + password: ${{ secrets.DOCKERHUB_TOKEN }} + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v2 + - + name: Build and push + run: | + docker version + docker buildx build -t artifacts.iflytek.com/docker-private/atp/${{ steps.image-info.outputs.image_name }}:${{ steps.image-info.outputs.image_tag }} . --file ${{ github.workspace }}/Dockerfile --load + docker push artifacts.iflytek.com/docker-private/atp/${{ steps.image-info.outputs.image_name }}:${{ steps.image-info.outputs.image_tag }} + docker rmi artifacts.iflytek.com/docker-private/atp/${{ steps.image-info.outputs.image_name }}:${{ steps.image-info.outputs.image_tag }} + - run: echo "🍏 This job's status is ${{ job.status }}." diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..f53e5eb --- /dev/null +++ b/Dockerfile @@ -0,0 +1,10 @@ +FROM python:3.8.13 + +WORKDIR /app + +COPY . /app + +RUN pip config set global.index-url https://pypi.mirrors.ustc.edu.cn/simple +RUN pip install -r requirements.txt + +CMD ["python", "app.py"] diff --git a/app.py b/app.py new file mode 100644 index 0000000..a43d80e --- /dev/null +++ b/app.py @@ -0,0 +1,49 @@ +import gradio as gr +from transformers import pipeline +from gradio.themes.utils import sizes + + +theme = gr.themes.Default(radius_size=sizes.radius_none).set( + block_label_text_color = '#4D63FF', + block_title_text_color = '#4D63FF', + button_primary_text_color = '#4D63FF', + button_primary_background_fill='#FFFFFF', + button_primary_border_color='#4D63FF', + button_primary_background_fill_hover='#EDEFFF', +) + + + +unmasker = pipeline('fill-mask', model='bert-base-uncased') + +def fill_masker(text): + results = unmasker(text) + total_results = "" + + for result in results: + total_results += f"Token: {result.get('token_str')}, Score: {result.get('score')}" + total_results += '\r\n' + + return total_results + + +with gr.Blocks(theme=theme, css="footer {visibility: hidden}") as demo: + gr.Markdown(""" +
ζ–‡ζœ¬ζ‘˜θ¦
+ """) + with gr.Row(): + with gr.Column(): + box1 = gr.Textbox(label="ζ–‡ζœ¬") + with gr.Row(): + button = gr.Button("提亀", variant="primary") + clear = gr.Button("清陀", variant="primary") + box2 = gr.Textbox(label="ζ–‡ζœ¬") + + button.click(fn=fill_masker, inputs=box1, outputs=box2) + clear.click(lambda x: gr.update(value=''), [], [box1]) + examples = gr.Examples(examples=[['Paris is the [MASK] of France.'], ['The goal of life is [MASK].']], inputs=[box1], label="例子") + + +if __name__ == "__main__": + demo.queue(concurrency_count=3) + demo.launch(server_name = "0.0.0.0", server_port = 7028) diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..dfaa0e1 --- /dev/null +++ b/requirements.txt @@ -0,0 +1,3 @@ +gradio == 3.27.0 +transformers +torch