为流行的生成模型(如 GPT、PaLM 等)生成不同的 NLP 任务提示
This repository is tested on Python 3.7+, openai 0.25+.
You should install Promptify using Pip command
pip3 install promptify
or
pip3 install git+https://github.com/promptslab/Promptify.git
To immediately use a LLM model for your NLP task, we provide the Prompter
API.
from promptify import OpenAI
from promptify import Prompter
sentence = "The patient is a 93-year-old female with a medical
history of chronic right hip pain, osteoporosis,
hypertension, depression, and chronic atrial
fibrillation admitted for evaluation and management
of severe nausea and vomiting and urinary tract
infection"
model = OpenAI(api_key) # or `HubModel()` for Huggingface-based inference
nlp_prompter = Prompter(model)
result = nlp_prompter.fit('ner.jinja',
domain = 'medical',
text_input = sentence,
labels = None)
### Output
[{'E': '93-year-old', 'T': 'Age'},
{'E': 'chronic right hip pain', 'T': 'Medical Condition'},
{'E': 'osteoporosis', 'T': 'Medical Condition'},
{'E': 'hypertension', 'T': 'Medical Condition'},
{'E': 'depression', 'T': 'Medical Condition'},
{'E': 'chronic atrial fibrillation', 'T': 'Medical Condition'},
{'E': 'severe nausea and vomiting', 'T': 'Symptom'},
{'E': 'urinary tract infection', 'T': 'Medical Condition'},
{'Branch': 'Internal Medicine', 'Group': 'Geriatrics'}]
Task Name | Colab Notebook | Status |
---|---|---|
Named Entity Recognition | NER Examples with GPT-3 | ✅ |
Multi-Label Text Classification | Classification Examples with GPT-3 | ✅ |
Multi-Class Text Classification | Classification Examples with GPT-3 | ✅ |
Binary Text Classification | Classification Examples with GPT-3 | ✅ |
Question-Answering | QA Task Examples with GPT-3 | ✅ |
Question-Answer Generation | QA Task Examples with GPT-3 | ✅ |
Relation-Extraction | Relation-Extraction Examples with GPT-3 | ✅ |
Summarization | Summarization Task Examples with GPT-3 | ✅ |
Explanation | Explanation Task Examples with GPT-3 | ✅ |
SQL Writer | SQL Writer Example with GPT-3 | ✅ |
Tabular Data | ||
Image Data | ||
More Prompts |
We welcome any contributions to our open source project, including new features, improvements to infrastructure, and more comprehensive documentation. Please see the contributing guidelines