Function Callingで遊戯王APIを呼び出す 2(rapidfuzzによる名寄せ機能追加)

Function Callingで遊戯王APIを呼び出す 2(rapidfuzzによる名寄せ機能追加)

OpenAI APIを活用した遊戯王APIからの情報取得システムがパワーアップ

前回作成したFunction Callingから遊戯王APIにアクセスするシステムは英語のカード名にしか対応しない問題があった。

そこで、

  1. 日本語への対応
  2. あいまい入力への対応

を行った。

rapidfuzzを用いた遊戯王カードの名寄せ

rapidfuzzを用いた遊戯王カードの名寄せ

あいまいな遊戯王カード名を正式名称と紐づけたい

たとえば何らかのシステムに「青眼の白龍」のつもりで「青目の白龍」と入力したとする。
(「眼」と「目」が間違っている。)

このときに、


そんな名前のカードは存在しません

ではなく、


あなたが入力したのは青眼の白龍ですか?

こういった需要を満たす技術は「名寄せ」と呼ばれていて、
そこでは文字列間の類似度、あるいは距離を計算する手法がよく用いられる。
有名なアルゴリズムとして、

  • レーベンシュタイン距離
  • ジャロ距離
  • ジャロ・ウィンクラー距離

などいくつか挙げられるが、その辺のアルゴリズムを大体網羅して、かつ高速で使用方法も簡単な最強ライブラリが存在する。

今回はその最強ライブラリrapidfuzzを使って遊戯王カード名の名寄せを行う。

Function Callingで遊戯王APIを呼び出す

Function Callingで遊戯王APIを呼び出す

OpenAI APIのFunction Callingを使って遊戯王APIからカード情報を取得する

OpenAI APIにはFunction Callingという機能があって会話内容に応じて関数を使ってくれるらしい。
公式サンプルの天気予報APIでは気乗りしないので遊戯王APIを使って実験する。

格付けチェック「ジャンプ新連載」 第32回「ツーオンアイス」

格付けチェック「ジャンプ新連載」 第32回「ツーオンアイス」

格付けチェック「ジャンプ新連載」

真のジャンプ読者であればジャンプ新連載の1話を読んだだけで何話連載するか分かるはず。
週刊少年ジャンプ新連載の1話だけを読んで何話連載するか当てる。

詳細は第1回に書いてある。

秋の新連載×3の3つ目。

格付けチェック「ジャンプ新連載」 第31回「カグラバチ」

格付けチェック「ジャンプ新連載」 第31回「カグラバチ」

格付けチェック「ジャンプ新連載」

真のジャンプ読者であればジャンプ新連載の1話を読んだだけで何話連載するか分かるはず。
週刊少年ジャンプ新連載の1話だけを読んで何話連載するか当てる。

詳細は第1回に書いてある。

秋の新連載×3の2つ目。

格付けチェック「ジャンプ新連載」 第30回「魔々勇々」

格付けチェック「ジャンプ新連載」 第30回「魔々勇々」

格付けチェック「ジャンプ新連載」

真のジャンプ読者であればジャンプ新連載の1話を読んだだけで何話連載するか分かるはず。
週刊少年ジャンプ新連載の1話だけを読んで何話連載するか当てる。

詳細は第1回に書いてある。

秋の新連載×3。
「人造人間100」、「テンマクキネマ」が終わって「ブラッククローバー」も連載移籍。
「ドリトライ」も終わりそうだから1枠足りない?
「ドリトライ」終わらない?

陰の光・表裏一体からサーチできるEXデッキのカード一覧

陰の光・表裏一体からサーチできるEXデッキのカード一覧

陰の光・表裏一体から特殊召喚できるモンスターリスト

陰の光・表裏一体から特殊召喚できるEXデッキのモンスター全てのリストが欲しかった。
探しても一部抜粋したものばかりだったので自分で作成。

表裏一体は光・闇属性モンスターをリリースして、種族・レベルが同じ別属性(闇か光)のモンスターを手札・EXデッキから特殊召喚できる。
陰の光はリリースできるのが闇だけだがデッキからも出せる。

カード名種類テキスト
陰の光通常魔法このカード名の①②の効果はそれぞれ1ターンに1度しか使用できず、この効果を発動するターン、自分はバトルフェイズを行えない。①:自分フィールドの闇属性モンスター1体を対象として発動できる。そのモンスターと元々の種族・レベルが同じとなる光属性モンスター1体をデッキ・EXデッキから特殊召喚する。②:墓地のこのカードを除外して発動できる。このターン自分は通常召喚に加えて1度だけ、自分メインフェイズに光・闇属性モンスター1体を召喚できる。
表裏一体速攻魔法このカード名の①②の効果はそれぞれ1ターンに1度しか使用できない。①:自分フィールドの光・闇属性モンスター1体をリリースして発動できる。そのモンスターと元々の種族・レベルが同じで、元々の属性が異なる光・闇属性モンスター1体を手札・EXデッキから特殊召喚する。②:自分メインフェイズに墓地のこのカードを除外し、自分の墓地の光・闇属性モンスターをそれぞれ1体ずつ対象として発動できる。そのモンスター2体をデッキに戻してシャッフルする。その後、自分はデッキから1枚ドローする。

今回は「EXデッキ」の「効果モンスター」のみに絞る。
また、上記のカード効果で特殊召喚できないモンスターも除外した。

この対象となるモンスターを公式の「遊戯王OCGカードデータベース」によって検索。
その結果を以下にまとめた。

※2023年11月29日更新

OpenAIのChat APIにブログのタグを自動で付けてもらう

OpenAIのChat APIにブログのタグを自動で付けてもらう

GPT4の力でブログのタグ付けを自動化

このブログは1つの記事に1つのカテゴリーと1~4個のタグを付けている。
この記事の場合は、

カテゴリー:

  • software

タグ:

  • ChatGPT
  • Open AI
  • Python
  • GPT4

タグ付けは雑であり自分でも把握できていない。
大体過去の似た記事からタグをコピーして使いまわしている。

カテゴリーに関しては過去の100以上のブログ記事のすべてが「software」。
漫画の記事も羊毛フェルトの記事も全て「software」。

ここで、言語処理に強いOpenAIのAPIを使うことでブログのタグ付けカテゴリー付けを自動化できるのではないかと考えた。

遊戯王OCG全カードの知名度ランキングを作る(2/2) ~すごく改善!~

遊戯王OCG全カードの知名度ランキングを作る(2/2) ~すごく改善!~

遊戯王OCG全カードの知名度が調べられた!

前回挑戦したが微妙な結果だった知名度ランキング。

しかし「知名度」の指標として「Google検索ヒット数」を使用するアイディアは良かった。
前回をベースとして改善した結果いいかんじのランキングができた。

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×