たつをの ChangeLog

65 件 見つかりました。

1 2 3 4 5 6 7 8 9 10 11 12 13 [ 次へ ]

2023年の春ごろ、Yahoo!デベロッパーネットワークのテキスト解析 Web API がひっそりと CORS 対応しました。簡単に言うと、ブラウザで開いたウェブページから直接 Web API を叩けるようになった、ということです。

API

テキスト解析 Web API の CORS 対応の概略は10月に LINEヤフー Tech Blog に書きました。概略というか単なるサンプルプログラム紹介です。Ajax な HTML ページや Chrome 拡張機能などの簡単なサンプルプログラムがあります。

  • テキスト解析 Web API を JavaScript から直接使う( API が CORS に対応しました) (LINEヤフー Tech Blog)
    最近のことですが、Yahoo!デベロッパーネットワークのテキスト解析 Web API の CORS(Cross-Origin Resource Sharing)対応が完了しました。 CORS についてはここでは解説はしませんが、本稿の観点からざっくり説明すると「別ドメインにあるウェブページ内の JavaScript プログラムからテキスト解析 Web API に直接アクセスして利用できるようになった」ということです。

    本稿では、サンプルコードでウェブページからテキスト解析 Web API に直接アクセスする方法を説明していきます。応用例として、Google Chrome 拡張機能のサンプルも紹介します。

もう一本、11月に LINEヤフー Tech Blog に書いた記事。サンプルプログラムから少しだけ踏み込んだサンプルプログラム(強)を紹介した記事です。テキスト解析 Web API の「校正支援」機能を使って、HTML ファイル一つで校正支援ツールを実現しています。

  • 1つの HTML ファイルだけで完結する校正支援ツールの作り方 (LINEヤフー Tech Blog)
    そのテキスト解析 Web API の機能の一つである「校正支援」は日本語文章の品質チェック(校正)を支援するもので、文字の入力ミス、言葉の誤用、わかりにくい表記、不適切な表現などが使われていないかをチェックして、指摘します(内部の辞書データをベースとしているため完全なものではないことをご承知おきください)。

    この校正支援機能のサンプルプログラムとして「HTML ファイル1つだけで完結する校正支援ツール」を作ったので紹介します。入力されたテキストに対する校正指摘をわかりやすく表示し、指摘箇所へのアクションを簡単に行える UI を持ち、特別なアプリやサーバを用意する必要がなく、Web ブラウザさえあれば今日からすぐに使える校正支援ツールとなっております。

ついでに再紹介。9月にリニューアルした個人サイト「テキスト変換(笑)」でも CORS 対応したテキスト解析 Web API を使っていますよ。


ということで、Yahoo!デベロッパーネットワークのテキスト解析 Web APIをぜひご利用ください。


API! API!
CORS! CORS!


今から約16年前に公開した「テキスト変換(笑)」ですが、このたびリニューアル公開しました!
新版はこちらです。


wara demo

テキストを入力して変換すると、ときどき「(笑)」が挿入された不謹慎でイラッとする文章ができあがります。どうぞご利用ください(笑)

  • 入力例:
    Web2.0で愛されモテカワスイーツな次世代ウェブサービスです。
  • 出力例:
    Web2.0(笑)で愛されモテカワスイーツ(笑)な次世代ウェブサービス(笑)です。

旧版は形態素解析に MeCab を使っていましたが、新版は Yahoo!デベロッパーネットワークテキスト解析 Web API の「日本語形態素解析」機能を使っています。

テキスト解析 Web API は最近 CORS 対応されまして、ブラウザで表示されるWebページの中から直接 API を呼び出して使えるようになったのです。自分のサーバに一切の負荷がかからないのがありがたいです。

過去記事


15年前に書いた記事のリニューアル版です。


前回と同様、bigram language model に基づく、ランダム文生成を行います。
ある単語の次に現れる単語の分布を用いて、文章を生成していくだけです。

形態素解析(日本語の単語の認識)は、Yahoo!デベロッパーネットワークのテキスト解析 API の日本語形態素解析 (V2) を使います。

ベースとなるテキストデータは「日本国憲法」(nkkp.txt) を使います (ref. [2023-06-07-1])。
プログラム mamarkov-build.pl で、テキストデータ (nkkp.txt) を形態素解析し、「ある単語の次に現れる単語の分布」を計算し、データファイル (mamarkov-sample.tsv) に出力します。


実行コマンド:
cat nkkp.txt | ./mamarkov-build.pl > mamarkov-sample.tsv

ファイル:
wc -l nkkp.txt
    224 nkkp.txt

tail -1 nkkp.txt
但し、この憲法によって、後任者が選挙又は任命されたときは、当然その地位を失う。

wc -l mamarkov-sample.tsv
    868 mamarkov-sample.tsv

head mamarkov-sample.tsv | tail -3
あれば  、      、      、      、
い      ない
いかなる        特権    差別    奴隷    宗教    宗教    場合

mamarkov-sample.tsv には
  • 「あれば」のあとには「、」しか現れない(4回)
  • 「いかなる」のあとに続く単語は「宗教」が2回、「特権」「差別」「奴隷」「場合」が1回ずつである
などの統計情報(日本国憲法のテキストの)が格納されています。

このデータファイル (mamarkov-sample.tsv) を用いて、プログラム mamarkov-gen.pl で新たなテキストを生成します。
そのロジックは「RSS を読み込んでランダムな文章を生成する[2008-09-07-3]」で解説しているものと同じです。


実行コマンド:
cat mamarkov-sample.tsv | ./mamarkov-gen.pl

出力例:
配偶者の国民の原理に、これを証拠とが欠けたときは、及び団体は、この憲法第二以上の多数でこれを、これを選任する。

但し、又は一部の自由を委任ができる。

信教の議事機関は、社会的、国会を有する終審と異なった議決にも、個人の安全とする。

財産は、及び法律の下に保障及び残虐な刑罰を失う。

何人も、国務大臣は、一般行政機関が日本国民は、内閣は、可否同数の全部又は法律の目的を経なければならない。

関連記事


Yahoo!デベロッパーネットワークのテキスト解析 API の日本語形態素解析 (V2) を Linux や macOS などのターミナルから使うためのコマンドを用意しました。
Perl で書いた超簡単なやつです。


実行例
echo '走れ' | ./yapima2.pl

{"id":1,"jsonrpc":"2.0","result":{"tokens":[["走れ","はしれ","走る","動詞","*","子音動詞ラ行","命令形"]]}}


実行例(jq で加工)
echo '読み仮名だけ抜き出します' | ./yapima2.pl \
  | jq -cr '[ .result.tokens[] | .[1] ] | join("")'

よみがなだけぬきだします
echo '行番号と品詞です\n晩御飯が美味しい' | ./yapima2.pl \
  | jq -cr '[ .id, [ .result.tokens[] | .[3] ] ] | flatten | @csv'

1,"名詞","名詞","助詞","名詞","判定詞"
2,"名詞","名詞","助詞","形容詞"
echo '文章から名詞だけ抽出して要約っぽく見せかけます' | ./yapima2.pl \
  | jq -cr '[ .result.tokens[] | select(.[3] | contains("名詞")) | .[0] ] | join("")'

文章名詞抽出要約

参考

この記事に言及しているこのブログ内の記事

昨日(5/26)の夜から PAAPI でエラーになることが多くなりました。
今日(5/27)夕方ごろまで不調が続きまして、「キンセリ」での表示にも一部影響がでていました(古い価格情報が表示されるなど)。
夜にはすっかり直りました。
お騒がせしました。

§

不調時は、プログラムから投げる PA-API へのリクエストが2,3回に1度しか返ってこない状況。
リクエストの間隔を数秒〜数十秒にして試すもやはり同じ。

最初、自分の環境の問題かと思い、昨晩は日付が変わっても調査続行してました。
結局、アマゾンの PAAPI のサイトにある「Scratchpad」でも同じ状況(数回に1回しか Success にならない)になると気づき、アマゾン側の問題であると認識しました(最初に試すべきでした)。


まあ、つまりは、API関連のサーバが重くなっていたわけで、私のせいじゃないのです!
安心です。

1 2 3 4 5 6 7 8 9 10 11 12 13 [ 次へ ]

たつをの ChangeLog
Powered by chalow