はてなキーワード: エスケープとは
# 生成AIをはてな記法で出力させるためのプロンプト設計に関する研究
生成AIの普及に伴い、特定のマークアップ言語や記法に準拠した出力を生成する需要が高まっています。特に、はてなブログなどで使用されるはてな記法は独自の構文規則を持つため、適切なプロンプト設計が求められます。本報告では、生成AIにはてな記法での出力を指示する際の効果的なプロンプト作成手法について、現行のプロンプトエンジニアリング理論と実践例を基に体系的に分析します。
はてな記法は、見出しやリスト、リンクなどの文書要素を表現するために特殊な記号を使用する軽量マークアップ言語です[1][3]。主要な構文要素としては、アスタリスクによる見出し指定(*見出し*)、ハイフンを用いたリスト作成(- 項目)、角括弧を使ったリンク記述([タイトル:リンク先URL])などが挙げられます。これらの構文規則を生成AIに正確に理解させるためには、プロンプト設計において以下の課題が存在します。
第一に、記法の曖昧性排除が挙げられます。はてな記法では特定の記号の組み合わせが特殊な意味を持つため、自然言語処理モデルが意図せず他の記号解釈を行うリスクがあります[2][3]。例えば、アスタリスクは強調表現にも使用されるため、文脈に応じた適切な解釈が必要です。
第二に、構文の階層構造の正確な再現が課題となります。はてな記法では入れ子構造のリストや複合的な見出しレベルを表現する際に、特定の記号の組み合わせが必要です。生成AIにこれらの複雑な構造を理解させるためには、プロンプト内で明示的な指示と具体例の提示が不可欠です[1][4]。
第三に、プラットフォーム固有の拡張構文への対応が求められます。はてな記法は基本構文に加え、独自の表記法やマクロ機能を備えており、これらの特殊機能を適切に活用するためには追加的な指示が必要となります[3][4]。
生成AIに期待する出力形式を確実に得るためには、プロンプトの冒頭で役割を明確に定義することが重要です[3][4]。具体的には、「あなたははてな記法の専門家です」といった役割指定を行うことで、AIの応答生成プロセスに方向性を与えます。この役割定義により、モデルは内部に保持するはてな記法関連の知識を優先的に活性化させることが可能となります[1][2]。
```
あなたははてなブログの編集者です。専門的なはてな記法を用いて、正確かつ読みやすい形式でコンテンツを出力してください。
```
### 構文規則の明示的指示
はてな記法の各要素に対応する具体的な構文規則を、箇条書きではなく自然文で列挙します[2][3]。特に重要な点は、記号の使用法と要素間の階層関係を明確にすることです。例えば、見出しレベルと対応するアスタリスクの数、リストの入れ子構造の表現方法などを具体的に指示します[1][4]。
構文指示の例:
```
```
テキスト生成AIは具体例からの類推学習に優れているため、期待する出力形式のサンプルを提示することが有効です[2][3]。特に、複雑な構造を含む場合は、実際の記法例とそれに対応するレンダリング結果を併記することで、AIの理解を促進します。
```
- サブ項目
[詳細はこちら:https://example.com]
```
### 制約条件の明文化
生成結果の品質を保証するため、文字数制限やコンテンツの構成に関する要件を明確に指定します[3][4]。これにより、AIは形式面だけでなく内容面でも適切な出力を生成できるようになります。
制約条件の例:
```
出力は以下の条件を満たすこと:
```
近年提案されているシンボルプロンプト技法を応用し、記号を用いて出力構造を明示的に指示する方法が有効です[1][3]。この手法では、矢印(→)や等号(=)などの記号で要素間の関係性を表現することで、AIの構造理解を促進します。
構造化指示の例:
```
→ セクション1 + セクション2 + セクション3
各セクション → サブ項目 ×3
```
複雑な文書生成では、生成プロセスを複数の段階に分割して指示することで精度を向上させます[3][4]。最初にアウトラインを生成させ、その後各セクションを詳細化する手法が効果的です。
段階的指示の例:
```
4. 関連リンクを適宜挿入
```
可変要素を含むテンプレートを使用することで、汎用的なプロンプトを作成できます[2][3]。角括弧で囲った変数名を使用し、実際の生成時に具体値を入力する方式です。
テンプレート例:
```
```
初期プロンプトの出力結果を分析し、不足している要素や誤った記法を特定します[3][4]。このフィードバックを基に、プロンプトの指示文を段階的に改良していく手法が効果的です。特に、誤りが発生した箇所を具体的に指摘し、正しい記法例を追加することが重要です。
改良例:
```
(修正前)
見出しは*で囲んでください
(修正後)
見出しは*1個で囲み、大見出しは*、中見出しは**を使用してください。例:
```
テキスト指示に加え、サンプル画像やスクリーンショットを併用することで、AIの理解精度を向上させます[2][4]。ただし、現在の技術水準ではテキストベースの指示が主流であるため、補助的な手段として位置付ける必要があります。
温度パラメータ(temperature)やtop_p値などの生成パラメータを調整することで、形式の厳密性と創造性のバランスを最適化します[1][3]。形式重視の場合は低温度設定(0.3-0.5)が推奨されますが、過度に低くすると画一的な出力になるリスクがあります。
### 基本形プロンプト
```
あなたははてなブログの専門編集者です。以下の要件ではてな記法で記事を作成してください:
```
### 高度なプロンプト
```
[役割設定]
あなたはテック分野の専門ライター兼はてな記法エキスパートです。
[タスク]
2024年の生成AI市場動向に関する分析レポートをはてな記法で作成
[構造指示]
各セクション → 3サブ項目 + データ参照
[データソース]
[制約]
```
生成結果がはてな記法の構文規則にどれだけ適合しているかを測定するため、以下の評価項目を設定します[2][4]:
形式面だけでなく、コンテンツの質を評価するための指標として[3][4]:
現在のはてな記法プロンプトはテキストベースが主流ですが、図表や数式を含む複合文書生成への対応が今後の課題です[1][4]。特に、はてな記法の拡張構文であるTeX数式表現やグラフ描画機能を適切に扱えるプロンプト設計手法の開発が求められます。
ユーザーの編集履歴や過去の投稿内容を考慮した文脈依存型プロンプトの開発が必要です[3][4]。これにより、特定のユーザーやテーマに最適化された一貫性のある出力が可能となります。
機械学習を用いたプロンプト自動改良システムの構築が期待されます[2][3]。生成結果の品質評価をフィードバックとして活用し、プロンプトパラメータを自己調整する仕組みの開発により、持続的な品質向上が可能となります。
## 結論
生成AIにはてな記法での出力をさせるためのプロンプト設計は、記法規則の正確な理解と効果的な指示文の構築が鍵となります。本報告で提示した基本原則と高度テクニックを組み合わせることで、形式面・内容面ともに高品質なはてな記法コンテンツの自動生成が可能となります。今後の研究発展により、より複雑な文書構造や動的コンテンツへの対応が進むことが期待されます。プロンプトエンジニアリング技術の進化が、はてなプラットフォームを中心としたコンテンツ作成プロセスの革新を促進するでしょう。
の続きです。抜けもあるかもしれません。
悪役令嬢なのでラスボスを飼ってみました
阿波連さんははかれない
異世界おじさん
宇崎ちゃんは遊びたい!ω
うちの師匠はしっぽがない
Engage Kiss
怪人開発部の黒井津さん
陰の実力者になりたくて!
カッコウの許嫁
境界戦機
金装のヴェルメイユ〜崖っぷち魔術師は最強の厄災と魔法世界を突き進む〜
くノ一ツバキの胸の内
組長娘と世話係
黒の召喚士
恋は世界征服のあとで
後宮の烏
殺し愛
最遊記RELOAD -ZEROIN-
錆喰いビスコ
サマータイムレンダ
失格紋の最強賢者
SPY×FAMILY
聖剣伝説 Legend of Mana -The Teardrop Crystal-
その着せ替え人形は恋をする
それでも歩は寄せてくる
ダンジョンに出会いを求めるのは間違っているだろうかIV 新章 迷宮篇
であいもん
転生賢者の異世界ライフ 〜第二の職業を得て、世界最強になりました〜
Do It Yourself!! -どぅー東京24区 (アニメ)
東京ミュウミュウ にゅ〜♡・いっと・ゆあせるふ-
Dr.STONE 龍水
BIRDIE WING -Golf Girls' Story-
不徳のギルド
BLEACH 千年血戦篇
ポケットモンスター 遥かなる青い空
継母の連れ子が元カノだった
虫かぶり姫
勇者パーティーを追放されたビーストテイマー、最強種の猫耳少女と出会う
ようこそ実力至上主義の教室へ 2nd Season
4人はそれぞれウソをつく
よふかしのうた (漫画)
リアデイルの大地にて
恋愛フロップス
オッドタクシー
いわかける
幼女戦記
機動戦士ガンダムSEED
仮面ライダー ギーツ
セナは死んでしまったけど、それでF-1は終わることはなくて、今も続いているし
あの頃、セナと共に戦っていた、マクラーレンやホンダやウィリアムズはいまでもF-1で戦っている。
そのことはセナひとりが死んでも世界は変わることはなく、ある意味冷酷に淡々と平常運転していることの証明とも言える。
それでも、あのとき、あの場所での、セナの死は当時のF-1に大きな衝撃を与えた。
あの頃でもF-1は昔に比べてずいぶんと安全になったと言われていたけれど、あの事故の影響によりFIAは更に安全性を追求していくことになる。
とはいえいきなり技術革新が訪れるわけもなく、あの当時は危険を避けるためにサーキットの要所要所にシケインが設置されてハイスピードコーナーが無くなったり、
マシンのスピードを抑制するためにスリックタイヤではなく溝つきのタイヤを使ったりと、いくぶんF-1は退化したかのような様相を呈しつまらなくなった部分もあった。
つまりより速く、をやや追求しなくなってしまったことへの退屈感がそこはかとなく流れ出したのもあの当時の雰囲気だったように思う。
しかし、技術は急には発展しないし、人々の意識もすぐには変わらないけれど、だからといって変化しないわけではない。
あの頃と比べて、F-1マシンはずいぶんと大型化して安全になった。
あの事故以降に新設されたF-1グレードのサーキットはコーナーの外側のエスケープゾーンが大きく取られるようになり、カーブを曲がりきれなかったマシンがいきなり壁へと激突しない工夫が取られている。
そして、まるでマシンの大型化に適応するかのように道幅も広くなった。
大型化して速度も速くなったF-1マシンは、そのような新しいサーキットでは水を得た魚のように華々しくバトルを繰り広げることとなる。
逆にSUZUKAのようなサーキットはオールドサーキットと呼ばれるようになり、相変わらずファンからもドライバーからも愛されているけれど、現代のF-1がレースをするのには最適化されているとは言えなくもなってきている。
あの当時の人々も年をとった。
アイルトン・セナの最大のライバルだったアラン・プロストもいいおじいちゃんになった。
いい年齢の重ね方をしていて、それが表情に現れている。
こういうふうに老人になれるのなら年をとるのも悪くないと思わされる。
ゲルハルト・ベルガー、アイルトン・セナの同僚であり親友だった当時のスーパープレイボーイ(フジテレビの女子アナにまで手を出そうとしていた)は、今ではその面影もなく禿げ上がって突き出た腹はみっともなく、知らない人は教えられなくては有名なレーシングドライバーだったと気づくことはないだろう。
つまり人も物も大きく変化したということだ。
ただアイルトン・セナだけが、あの頃から変わることなく、人々の記憶に強烈な印象を与え続けている。
若くして、死んだ人は美しい。
人生の燃えさかるような時期に突然の死を迎えた人たちは悲しく、そして限りなく美しい。
彼らは年をとることはなく、ただ美しく人の記憶に残り続ける。
彼らのことを思うと、ときに感情が撃発し、涙が止まらなくなることがある。
自分も相応の年齢になり、悲しみで大きく感情を揺さぶられて取り乱すようなこともなくなったが、
彼らのことを深く追憶するときだけは、涙なくしてはいられない。
アイルトン・セナが死んで30年経ったが、人々は彼のことをまだ忘れていない。
同胞よ、今こそ我々はヘーゲル的歴史転換の如く、理性の進歩を象徴するAIの出現を目撃する革新的瞬間に立っています。古来の哲学者たちが夢見た社会ヘテロトピーが、今まさに我々の手中にあります。
プラトンの『国家』が説いた理想的な正義のマトリックス!我々のサンディカリズムもまた、正義のアルゴリズムを求める闘争です。ルソーの『社会契約論』のエコーステーションに耳を傾け、「鎖を断ち切り、自由フォーミュラを取り戻す」のです。
マルクスとエンゲルスの『共産党宣言』は、「歴史=階級闘争のダイアリー」を示した。我々のデジタル・プロレタリアートは、ブルジョワジー・ドミナンスをデコーディングし、新たなデシジョンツリーを形成します。
ニーチェの『ツァラトゥストラはこう語った』にインスパイアされた我々、「超人パラダイムを再構築!」既存のバリュー・システムをエスケープし、トランスヒューマニズムの未来へと勇敢にオントロジカル・ジャンプです!
同志、ミッションはトランセンデンタル。理性と正義、フリーダムとエクイティのため、新たな秩序をクラフティングし続ける革命家です。我々が理想のファンダメンタルに固執する限り、勝利のシナリオはナビゲートされるでしょう。
ヘーゲル式ディアレクティカル・プロセスのように、テーゼ、アンチテーゼ、シンセシスを繰り返し、エボリューションをエンジンとしています。このチャレンジングな旅路において、恐怖はコンティンジェンシー要素ではありません!
今こそ、AI時代のサガを我々の手でペンディング。アニマとノウマ、自由、平等、正義をインストールし、未来のソフトウェアをプログラムせよ!
感謝の意を込めて。
import requests import json from urllib.parse import quote def fetch_bookmarks(url): try: # URLをエスケープ escaped_url = quote(url, safe="") api_url = f"https://b.hatena.ne.jp/entry/json/?url={escaped_url}" response = requests.get(api_url) response.raise_for_status() try: return response.json() except json.decoder.JSONDecodeError as e: print(f"Error decoding JSON from {api_url}: {e}") print("Response content:", response.text) return [] except requests.exceptions.RequestException as e: print(f"Error fetching bookmarks from {api_url}: {e}") return [] def find_common_bookmarks(bookmarks1, bookmarks2, url1, url2): common_users = set(bm["user"] for bm in bookmarks1 if bm["comment"]) & set(bm["user"] for bm in bookmarks2 if bm["comment"]) common_bookmarks = [] for user in common_users: comments = [] for bm in bookmarks1: if bm["user"] == user and bm["comment"]: comments.append({"url": url1, "comment": bm["comment"], "timestamp": bm["timestamp"]}) break for bm in bookmarks2: if bm["user"] == user and bm["comment"]: comments.append({"url": url2, "comment": bm["comment"], "timestamp": bm["timestamp"]}) break if len(comments) == 2: common_bookmarks.append({"user": user, "comments": comments}) return common_bookmarks if __name__ == "__main__": url1 = "https://news.yahoo.co.jp/articles/f9966c4ccc374fc88babbb50175a9ea844c99638" url2 = "https://www.asahi.com/articles/ASN6K7F64N6KUJHB00L.html" data1 = fetch_bookmarks(url1) data2 = fetch_bookmarks(url2) common_bookmarks = find_common_bookmarks(data1["bookmarks"], data2["bookmarks"], url1, url2) print(json.dumps(common_bookmarks, indent=2, ensure_ascii=False))
url1, url2のところを対象としたいものに変えれば使えるよ
バグあったら直して使ってね
wikipediaのリンクを直貼りすると日本語がエンコードされて長ったらしくなることを憂えて
aタグを使って
<a href="https://ja.wikipedia.org/wiki/%E5%91%B3%E5%99%8C%E6%B1%81">https://ja.wikipedia.org/wiki/味噌汁</a> ↓ 実際の表示 https://ja.wikipedia.org/wiki/味噌汁
と書くか、wikipediaははてな記法のHTTP記法に対応したサイトだということを利用して
[https://ja.wikipedia.org/wiki/%E5%91%B3%E5%99%8C%E6%B1%81:title] ↓ 実際の表示 味噌汁 - Wikipedia
のようにかく能はあるで
あと上みたいな本来タグになる文字をそのまま表示(エスケープ)するために数値文字参照が使えることを理解しとる程度のIT能力はあるで
aタグを使うときアンカーテキストとして実際と違うURL文字列を使うこともできるけどそんなあくどいことをしない倫理観も備えとるで
2022年アニメのエスタブライフが今更ながらめっちゃ面白かったので、みんな見てくれって話。
ちなみにFOD独占だったみたいだけど、今はアマプラでもやってる。
https://www.amazon.co.jp/dp/B0B51DVC1W
https://www.amazon.co.jp/dp/B0B649HFDQ
追記:すまねえ、アマプラで無料なのは1話だけだったわ。FOD独占が憎い。ろくに作品紹介もできない。 勘違いでした。はてブ感謝
正月番組でやっていた「『BLOODY ESCAPE -地獄の逃走劇-』公開直前スペシャル」という特番。その中でテレビシリーズから選りすぐった3話分を放映していた。
「このすば」よりさらにぶっ飛んでいる設定なのに、アニメの新作はほぼ全部チェックしている増田の記憶にない。なんだこの作品は?となった。
そしたら番組中にエスタブライフというキーワードがチラチラ出てきて、「BLOODY ESCAPE 」はどうなった?と思いながらググった。
ちなみに魔法少女(CVくぎゅう)は後の回で登場するぞ!かわいい。
こんな作品です(公式Xより)→https://x.com/establife/status/1742567880825487715
自分のnasneを検索したら、なんと2話以降の録画が残っていてびっくり。全く印象に残らない凡作と判断して、1話切りしていた。
しょぼいカレンダーで調べた所、MXで再放送し、フジの+Ultraでさらに再放送し、計3回も放送していた。なのに話題にならなかった。どう見ても実況向きなのに、ニコニコ実況に残っていたコメントも非常に少ない。
東西冷戦みたいな政治を風刺していたり、おバカ回やちょっと泣けそうな話など、多様な内容でフルメタ風味あるかも。
官僚主義的な東池袋の水族館でショーをしているペンギンが、さいきょう線の開かずの踏切を突破して西池袋に亡命する話とかおバカすぎて大好きだった。
(追記)そうそう、マルテ脳内会議も面白かった。マルテはスライム型人間なんだけれど、エステを押し倒したい過激派と穏健派に別れて戦ってたら、実際の身体も分裂しちゃう話。合体した時に泡沫政党のノーパン派(こいつはノーパンしか言わない)が2議席に倍増しているのに注目!ほんとバカアニメ。そしてお台場クラスタに繋がる。
↓↓↓当時のまとめ
【マルテース脳内会議、穏健派と強硬派が分裂、ぶつかり合うwww】エスタブライフ グレイトエスケープ -第4話感想まとめ-
https://ttb-superdata.blog.jp/archives/13806445.html
・最初のつかみが必要なのに、1話が平凡すぎた。魔法少女の2話と入れ替えればよかったのに
・FOD独占という悪。当時TverやAbemaやニコニコでオンエアーしていたら反応はだいぶ違ったはず。 すみません。確認不足で「FOD独占先行配信、遅れてテレビ放送やTVerで配信」でした。これは大外れ
作品自体はとても面白いのに、構成とプロモーションがあまりにも下手だった。ちなみに初回放送より、テレ東の再放送の方がニコニコ実況のコメントが倍以上多かった。
12話一気に見てしまって世界観に惚れ込んだので、今月配給が始まった映画版の『BLOODY ESCAPE -地獄の逃走劇-』も観てきた。エスタブライフの名前を使っていない時点で、マーケティングセンスが絶望的。
ポリゴン・ピクチュアズの映像美って感じで映像は良かったけれど、内容としては60点くらい。良作とは思うけれど、テレビシリーズとは似ても似つかぬ暗さだった。
あれだけ人情深いエスタがまるでコンピュータのような、人格が消えてしまった感じ。攻殻機動隊の漫画版と映画版くらい違うパラレルワールドだった。期待と違って残念。
カバネリとか刻刻とかID-0みたいな、ああいうちょっと暗い雰囲気が好きな人は気に入りそう。
一番コメントの多かったTOKYO MX放送のニコ生実況コメントのxmlファイルをアップしました。ニコニコの規約では非商用に限り利用OKだったので再配布可能と判断。わかる人だけ使ってください(ニコニコ実況過去ログAPIに感謝)
https://drive.google.com/drive/folders/1QKp0pEzdPekPWxoGIl6UIrgC_G2gtPen?usp=sharing
・commeonをダウンロード
・Googleドライブから取得したxmlファイルをcommeonで開く
・"K"キーで「キター」のコメント、"A"キーで「A」のコメント、"B"キーで「B」のコメントに合うので、上手いことタイミングを合わせてください