donadelicc's picture
endrer eksempler..
de2ee9d
import gradio as gr
import requests, json
#import os
#from dotenv import load_dotenv, find_dotenv
#_ = load_dotenv(find_dotenv()) # read local .env file
#hf_api_key = os.environ['HF_API_KEY']
API_URL = "https://api-inference.huggingface.co/models/dslim/bert-base-NER" #NER endpoint
hf_api_key = "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"
# Helper function
#Summarization endpoint
def get_completion(inputs, parameters=None,ENDPOINT_URL=API_URL):
headers = {
"Authorization": f"Bearer {hf_api_key}",
"Content-Type": "application/json"
}
data = { "inputs": inputs }
if parameters is not None:
data.update({"parameters": parameters})
response = requests.request("POST",
ENDPOINT_URL, headers=headers,
data=json.dumps(data)
)
return json.loads(response.content.decode("utf-8"))
def ner(input):
output = get_completion(input, parameters=None, ENDPOINT_URL=API_URL)
# Convert the output entities into the required format for Gradio
entities = []
for entity_data in output:
entity = {
"start": entity_data["start"],
"end": entity_data["end"],
"entity": entity_data["entity_group"]
}
entities.append(entity)
output = {"text": input, "entities": entities}
return output
gr.close_all()
demo = gr.Interface(fn=ner,
inputs=[gr.Textbox(label="Skriv innen tekst å finne entiteter i teksten", lines=2)],
outputs=[gr.HighlightedText(label="Entiteter i teksten")],
title="Entitetsgjenkjenning med dslim/bert-base-NER",
description="Finn entiteter ved bruk av `dslim/bert-base-NER` modellen!",
allow_flagging="never",
#Here we introduce a new tag, examples, easy to use examples for your application
examples=["Mitt navn er Preben, jeg jobber i Nordea Liv og bor i Bergen",
"My name is Jake, I work at Nordea Liv and live in Bergen"])
demo.launch()