Coder Social home page Coder Social logo

nlp-api's Introduction

nlp-api

API para utilização de modelos de processamento de linguagem natural. Utiliza modelos disponíveis no HuggingFace para realizar tarefas como criação e classificação de texto. Atualmente utiliza apenas o modelo egonrp/gpt2-medium-wikiwriter-squadv11-portuguese`

Executar

São apenas dois componentes: a API e o banco de dados MongoDB. Com o docker-compose monte as imagens e execute os dois containers destes componentes:

docker-compose build
docker-compose up

Por padrão a API estará ouvindo a porta 8000, mas é possível alterar isso nos arquivos docker-compose.ymle api/Dockerfile

Endpoints

Ao executar a API, uma documentação interativa disponível em /doc por onde é possível realizar as requisições

GET - /session/start

Inicia uma seção e retorna um ID de seção. Não recebe nenhum argumento.

POST - /session/complete

Geração de texto (completion). Recebe um objeto com os parâmetros da requisição:

{
  "session_id": "string",
  "prompt": "string",
  "type": "in",
  "use_history": false
}
  • session_id - Id da seção retornado na requisição de inicialização de seção
  • prompt - Texto inicial para geração de texto
  • type -
  • use_history - Combinar prompt com histórico de atualizações. Implementação incompleta

POST - /session/classify

Classificação de texto. Utiliza por padrão o modelo PrachiPatel/text_emotion_classification

{
  "session_id": "string",
  "prompt": "string",
  "type": "in"
}

Label0=sad Label1=joy Label2=love Label3=anger Label4=fear Label5=Surprise label6=neutral

POST - /session/analyse_sentiment

Analise de sentimento. utiliza por padrão o modelo cardiffnlp/xlm-roberta-base-tweet-sentiment-pt

{
  "session_id": "string",
  "prompt": "string",
  "type": "in"
}

POST /train

{
  "data_training_args": {
    "dataset_name": "jvanz/querido_diario",
    "dataset_config_name": "gpt2-medium-wikiwriter-squadv11-querido-diario-portuguese",
    "model_name_or_path": "egonrp/gpt2-medium-wikiwriter-squadv11-portuguese"
  },
  "output_dir": "./llms/trained/gpt2-medium-wikiwriter-squadv11-querido-diario-portuguese",
  "overwrite_output_dir": true,
  "do_train": true,
  "do_eval": true
}

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.