From 73e3bbb3dcdce69e2bdc93cfc349887bfc002467 Mon Sep 17 00:00:00 2001 From: jianjiang Date: Fri, 21 Apr 2023 18:14:47 +0800 Subject: [PATCH] ok --- .gitea/workflows/build.yaml | 47 +++++++++++++++++++++++++++++++++++++ Dockerfile | 11 +++++++++ app.py | 45 +++++++++++++++++++++++++++++++++++ 3 files changed, 103 insertions(+) create mode 100644 .gitea/workflows/build.yaml create mode 100644 Dockerfile create mode 100644 app.py 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..e6f7bb5 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,11 @@ +#FROM python:3.8.13 +FROM artifacts.iflytek.com/docker-private/atp/base_image_for_ailab:0.0.1 + +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..2fea7b8 --- /dev/null +++ b/app.py @@ -0,0 +1,45 @@ +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', +) + + +sentimentPipeline = pipeline('zero-shot-classification', model='roberta-large-mnli') + +def sentiment_analysis(text, labels): + candidate_labels = labels.split(',') + results = sentimentPipeline(text, candidate_labels) + total_results = "" + index = 0 + + for candidate_label in candidate_labels: + total_results += f"Sentiment: {results.get('labels')[index]}, Score: {results.get('scores')[index]}" + total_results += '\r\n' + index += 1 + + return total_results + +demo = gr.Interface(fn=sentiment_analysis, + inputs=[ + gr.components.Textbox(label="Text"), + gr.components.Textbox(label="Label") + ], + outputs='text', + examples=[['I am happy', 'negative, netural, positive'], ['I am sad', 'negative, netural, positive']], + theme = theme, + title = "文本情感分析" + ) + + +if __name__ == "__main__": + demo.queue(concurrency_count=10) + demo.launch(server_name = "0.0.0.0")