Weitere Informationen hier (Ich freue mich sehr, einen Stern zu haben!)
Wenn Sie es schnell verwenden möchten, lesen Sie bitte den folgenden Code.
$ pip install cotoha_at_python
from cotohacall.main import cotoha_call
import os
os.environ['CLIENT_ID'] = 'Your ID'
os.environ['CLIENT_SECRET'] = 'Ypur Secret'
sentence = 'Ein API-Service, der eine hochpräzise Analyse der natürlichen Sprache von Japanisch realisiert. Mit der COTOHA-API können Sie problemlos die Technologie zur Analyse natürlicher Sprache verwenden, die die Forschungsergebnisse der NTT-Gruppe seit mehr als 40 Jahren nutzt.'
cotoha_call('keyword', sentence)
# Return
"""
[{'form': 'Hohe Präzision', 'score': 20.0},
{'form': 'Realisierung', 'score': 16.8278},
{'form': 'Einfach', 'score': 10.8133},
{'form': 'Reaserch-Ergebnis', 'score': 10.0},
{'form': 'cotoha api', 'score': 10.0}]
"""
Bereits eine supereinfache Erklärung zur Verwendung von COTOHA (Ich habe versucht, die COTOHA-API zu verwenden, die angeblich einfach mit der Verarbeitung natürlicher Sprache in Python zu handhaben ist und "Mentos und Das Ergebnis der Zusammenfassung von "Memories of Go" durch COTOHA. Mit COTOHAs schnellstem Tutorial
Ich habe es selbst geschrieben ・ Verwenden Sie Google Colab, da das Erstellen einer Umgebung schwierig ist! ・ Sie können es mit nur einer Kopie verwenden, ohne an irgendetwas zu denken!
Ich wollte so etwas, also habe ich es als Artikel veröffentlicht.
Wenn Sie diesen Artikel lesen, können Sie ihn sofort mit nur einer Kopie analysieren ...! (Sollte).
python
cotoha_call("ne", "Ich möchte schwarzen Donner essen")
Wenn Sie eingeben Das Analyseergebnis von "** Black Thunder will essen **" (dies ist eine einzigartige Ausdrucksextraktion) wird zurückgegeben.
===> Einzigartige Ausdrucksextraktion ===> {'message': '', 'result': [{'begin_pos': 0, 'class': 'ART', 'end_pos': 8, 'extended_class': 'Product_Other', 'form': 'Black Thunder', 'source': 'basic', 'std_form': 'Black Thunder'}], 'status': 0}
Das "ne" kann in geändert werden (es sollte alle in Entwicklern verfügbaren APIs abdecken)
API-Name | Eingang |
---|---|
Parsing | parse |
Einzigartige Ausdrucksextraktion | ne |
Schlüsselwortextraktion | keyword |
Korrespondenzanalyse | coref |
Ähnlichkeitsberechnung | simi |
Urteilsurteil | sen_type |
Benutzerattributschätzung(β) | user_at |
Beseitigung der Stagnation(β) | filter |
Spracherkennungsfehlererkennung(β) | detect |
Emotionsanalyse | senti |
einpacken(β) | summary |
Wenn ich alles mit der for-Anweisung versuche, sieht es so aus →
python
for api_type in ["ne", "parse", "coref", "keyword", "simi", "sen_type", "user_at", "filter", "detect", "senti", "summary"]:
cotoha_call(api_type, "Ich möchte schwarzen Donner essen.")
print("\n") #Pausen, damit die Ergebnisse besser sichtbar sind
print("Analyse beendet!")
・ Wenn Sie sich im Status "Python ist was?" Befinden, es aber ausprobieren möchten, ist dies eine supereinfache Erklärung (Ich habe versucht, die COTOHA-API zu verwenden, die angeblich die Verarbeitung natürlicher Sprache problemlos handhaben kann. Bitte lesen Sie / gossy5454 / items / 83072418fb0c5f3e269f)).
Schreiben Sie die Client-ID und das Client-Geheimnis nach dem Kopieren neu
# -*- coding:utf-8 -*-
#Referenz: https://qiita.com/gossy5454/items/83072418fb0c5f3e269f#python%E3%81%A7%E4%BD%BF%E3%81%A3%E3%81%A6%E3%81%BF%E3%81%9F
import os
import urllib.request
import json
import configparser
import codecs
import sys
client_id = "Kunden ID"
client_secret = "Kundengeheimnis"
developer_api_base_url = "https://api.ce-cotoha.com/api/dev/nlp/"
access_token_publish_url = "https://api.ce-cotoha.com/v1/oauth/accesstokens"
api_name_show_switch = 1 #Setzen Sie diesen Wert auf 0, wenn der API-Name nicht im Ausgabeergebnis angezeigt werden soll
def cotoha_call(api_type, sentence_1, sentence_2 = "Ich möchte weißen Donner essen", sent_len = 1, ):
#Zugriffstoken erhalten
def getAccessToken():
#Zugriff auf die URL-Angabe für die Token-Erfassung
url = access_token_publish_url
#Header-Spezifikation
headers={
"Content-Type": "application/json;charset=UTF-8"
}
#Körperspezifikation anfordern
data = {
"grantType": "client_credentials",
"clientId": client_id,
"clientSecret": client_secret
}
#Codieren Sie die Anforderungshauptteilspezifikation in JSON
data = json.dumps(data).encode()
#Anforderungsgenerierung
req = urllib.request.Request(url, data, headers)
#Senden Sie eine Anfrage und erhalten Sie eine Antwort
res = urllib.request.urlopen(req)
#Antwortkörper erhalten
res_body = res.read()
#Dekodieren Sie den Antworttext von JSON
res_body = json.loads(res_body)
#Holen Sie sich das Zugriffstoken vom Antworttext
access_token = res_body["access_token"]
return access_token
#API-URL-Spezifikation
if api_type == "parse":
api_name = "Parsing"
base_url_footer = "v1/" + api_type
request_body_type = 1
elif api_type == "ne":
api_name = "Einzigartige Ausdrucksextraktion"
base_url_footer = "v1/" + api_type
request_body_type = 1
elif api_type == "keyword":
api_name = "Schlüsselwortextraktion"
base_url_footer = "v1/" + api_type
request_body_type = 2
elif api_type == "coref":
api_name = "Korrespondenzanalyse"
base_url_footer = "v1/coreference"
request_body_type = 2
elif api_type == "simi":
api_name = "Ähnlichkeitsberechnung"
base_url_footer = "v1/similarity"
request_body_type = 3
elif api_type == "sen_type":
api_name = "Urteilsurteil"
base_url_footer = "v1/sentence_type"
request_body_type = 1
elif api_type == "user_at":
api_name = "Benutzerattributschätzung (β)"
base_url_footer = "beta/user_attribute"
request_body_type = 2
elif api_type == "filter":
api_name = "Stagnationsentfernung (β)"
base_url_footer = "beta/remove_filler"
request_body_type = 4
elif api_type == "detect":
api_name = "Spracherkennungsfehlererkennung (β)"
base_url_footer = "beta/detect_misrecognition"
request_body_type = 1
elif api_type == "senti":
api_name = "Emotionsanalyse"
base_url_footer = "v1/sentiment"
request_body_type = 1
elif api_type == "summary":
api_name = "Zusammenfassung (β)"
base_url_footer = "beta/summary"
request_body_type = 5
else :
print("Api Type Error.")
sys.exit()
if api_name_show_switch == 1:
print("===>\n" + api_name + "\n===>")
url = developer_api_base_url + base_url_footer
#Header-Spezifikation
headers={
"Authorization": "Bearer " + getAccessToken(), #access_token,
"Content-Type": "application/json;charset=UTF-8",
}
#Körperspezifikation anfordern
if request_body_type == 1:
data = {
"sentence": sentence_1
}
elif request_body_type == 2:
data = {
"document": sentence_1
}
elif request_body_type == 3:
data = {
"s1": sentence_1,
"s2": sentence_2
}
elif request_body_type == 4:
data = {
"text": sentence_1
}
elif request_body_type == 5:
data = {
"document": sentence_1,
"sent_len": sent_len
}
#Codieren Sie die Anforderungshauptteilspezifikation in JSON
data = json.dumps(data).encode()
#Anforderungsgenerierung
req = urllib.request.Request(url, data, headers)
#Senden Sie eine Anfrage und erhalten Sie eine Antwort
try:
res = urllib.request.urlopen(req)
#Was tun, wenn in der Anforderung ein Fehler auftritt?
except urllib.request.HTTPError as e:
#Wenn der Statuscode 401 Unauthorized lautet, fordern Sie das Zugriffstoken erneut an und fordern Sie es erneut an
if e.code == 401:
access_token = getAccessToken()
headers["Authorization"] = "Bearer " + access_token
req = urllib.request.Request(url, data, headers)
res = urllib.request.urlopen(req)
#Wenn der Fehler nicht 401 ist, wird die Ursache angezeigt.
else:
print ("<Error> " + e.reason)
#sys.exit()
#Antwortkörper erhalten
res_body = res.read()
#Dekodieren Sie den Antworttext von JSON
res_body = json.loads(res_body)
#Holen Sie sich das Analyseergebnis vom Antworttext
return res_body
später
python
cotoha_call("Eingang", "Der Text, den Sie analysieren möchten")
Die Analyse beginnt bei!
Diejenigen, die am Projekt teilnehmen Lassen Sie uns unser Bestes geben!
Recommended Posts