さわらブログ

さわら(@xhiroga)の技術ブログ

OneDriveを画像(アセット)のホスティングに使う

毎回手順を忘れるのでメモです。

TL;DR

埋め込みリンクを発行します。

埋め込みリンクの生成

次のような形式になっています。

https://1drv.ms/i/c/7164f0d67b294762/IQTtjXvUxmP_Rb_Q9HfErPirAWdot0gdSS2XfE25pGqSdOw?width=2048&height=2048

FAQ

  • 事前に共有リンクを発行しておく必要はある?
    • ありません(埋め込みの生成と同時に共有リンクが生成されます)
  • 読み込み速度は?
    • めちゃ遅いです。4秒程度かかります。私はDiscord Botのユーザーアイコンとか、速度が気にならないケースで使っています。

OneDriveを画像のホスティングに使うと4秒くらいかかる

macOSでSlackアプリにリダイレクトせず、ワークスペースを追加できない → Chrome設定

2025年5月現在、Slackアプリにワークスペースを追加するには、一度ブラウザで操作してからリダイレクトが必要になっています。

ところが、リダイレクトが無効化されているとこれが動きません。Chromeでは次のURLから確認できます。

chrome://settings/content

さらに、一度このリダイレクトを許可したとしても、Slackはワークスペースごとにサブドメインが異なります。

Slackワークスペースごとのリダイレクト許可設定

それで、毎回困ってしまっていたんですね。

解決方法

あらゆるサイトにリダイレクトを許可すれば済むのですが、そうしない場合です。

サブドメインワイルドカードにする形で指定してリダイレクトを許可します。

chrome://settings/content/popups を開いて、 [*.]slack.com を許可します、

リダイレクト許可

これで、新しいワークスペースへのログインができるようになりました!

人事労務freeeで過去の源泉徴収票を見直す

TL;DR

年末調整のページのURL中の西暦を書き換えればOKです。

動機

人事労務freeeでは、左カラムのメニューから年末調整の結果である源泉徴収票をダウンロードすることができます。

freee人事労務

ところが、ページ内には最新の年末調整の情報しかありません。過去年度を見たい場合の方法を探りました。

結論としては、URL中の西暦を書き換えればOKでした。

Google Scholar PDF Readerをインストールするとワークマンの領収書のPDFが開けなくなる

TL;DR

タイトルの通りで、エラー時の表示用と思われるPDFが表示されます。

Google Scholar PDF Readerをインストールするとワークマンの領収書のPDFが開けなくなる

その他

  • HTTP通信を眺めてみたのですが、Google Scholar PDF ReaderがPDFの取得処理に手を入れているようには見えず...
  • ローカルに保存した正しいPDFを、Google Scholar PDF Readerで眺めてみたところ問題はありませんでした。つまり取得時だけが問題...?

教訓

PDFに関するエラーが発生したら、Google Scholar PDF Readerを疑うこと(っていうか個人的には論文はZoteroで眺めているから拡張外しても良いかも?)

創作と画像生成AIについて思うところ

2024年から創作をはじめました。

www.pixiv.net

ネタの量に画力が追いついてなくって、練習の必要性を感じています。もちろん、全て手描きです。

その一方で、最近では創作と画像生成AIの関わり方を考えることが多くなりました。

創作が機械学習の対象になった時の気持ち

お絵描きや一次創作のクラスタにおける「創作」って、エンジニアが書く本やブログとは違った思い入れがあります。

「この子を育てています」「こういう風景って素敵ですよね」といった趣もあるし、 「このキャラクターってこういう表情しそう!」「この構図は見てみたかった!」という新しいことをやってみたことが評価されることもあります。

絵を描くことに特有の感情がある一方で、創作活動全般や、何かを生み出す経験には共通する部分も多いのではないでしょうか。例えば、時間をかけて作ったものを評価された時の喜びや、意図しない形で自分の作品が広まってしまった時の複雑な気持ちなどは、多くの方が共感できるかもしれません。

(もちろん絵を描いたり創作するのが一番近くて早いと思います)

学習されるというのは、こういう自分のキャラクターや世界が勝手に1人歩きする感覚に近いかもしれない。それでもし、自分のキャラクターがひどい扱いをされていたらどんな気持ちになるかを想像したい。

一方で、お絵かきをする人にも問題解決が主眼の創作物はあります。例えばトーンやブラシなど。 アナログとデジタルのお絵描きを比較すれば、バケツ塗りやスポイトツールもそうだと言えそうです。

つまり、創作を楽しみ、また脅かされている人がいる一方で、生産性を引き上げること自体は間違った方向性ではないと言えそうです。

では、何が問題なのでしょうか?

画像生成AIと予測変換

機械学習を用いてユーザーのデータを学習して生産性を引き上げるツールとして、日本語入力ソフトがあります。「ことえり」や「Google日本語入力」がそうです。

日本語入力ソフトの改善には、もちろんユーザーの同意を得て送信された変換データが用いられているはずです。画像生成AIやその応用のアプリケーションとは、何が違うのでしょうか。

私たちが日本語入力ソフトを「使う」理由は、それがあくまで入力の補助だからです。また「学習を許す」理由は、それが匿名化されているというのが前提にありそうです。

それを踏まえて言える画像生成AIの「問題」は、創作物が直接生成されうることです。この辺り文化庁のガイドラインでも、AI開発者向けに「学習データである著作物をそのまま出力させるような学習方法をとらない」と注意されています。日本語入力ソフトでは、文章がそのまま生成されることはありません。

もしも画像生成AIが、学習データであるイラストと酷似した画像を生成した場合、著作権侵害のリスクが生じます。また、多くの時間と情熱を込めて制作したオリジナルの作品が、AIによって容易に模倣されてしまうことは、クリエイターの創作意欲を大きく損なう可能性があります。さらに、生成された画像が意図しない文脈で使用されたり、作者の意図しない表現が含まれてしまう可能性も考慮する必要があります。

もしも生成されるのが、完成した絵ではなくて、「ラフを基にしたいい感じの線」とか「影を置くべき場所」とかに制限されているなら、かなり印象は違うと思います。

逆に、日本語入力ソフトから文章がまるまる出てきたらどうでしょうか?場合によっては自分の名前が出てきてしまったら。もしそういうリスクがあったら、自分のデータは学習に使わせたくないし、インターネットに文章を公開するのも憚られると思います。

画像生成AIの活躍の場と、創作で活躍する生成AIの違い

画像生成AIが創作物を直接生成し、それが創作を妨げる場合があれば、逆に創作を手助ける場合もあります。アニメや漫画など、どちらかといえば作品全体が創作と言えるようなケースです。もちろん本当は画像1枚1枚の動きや線の良さを楽しみたいところですが、特にアニメで視聴者の多数にそれを求めるのは難しいと思います。

おそらくは、画像1枚あたりの単価が目印になると思います。これは心情的にも、苦しい状態にあるアニメーターの方の作業を手助けするという意味で納得がいきます。それに、多くの絵を描く現場だから、その現場のための学習素材も多い。自社のデータで自社のためのモデルを開発すれば、完全にクリーンです。基盤モデルをどうするかは議論の余地ありですが、その点をクリアできれば非常に良いケースだと思います。

実際、そうした取り組みが始まったことが公開されています。

www.youtube.com

一方で、お絵かきや一次創作においては絵が創作の中心です。かっこよく言うと「メディアはメッセージ」でしょうか。

創作において生成AIが役立つとすれば、それは画像を学んだ生成AIではなく、創作過程を学んだ生成AIになると思います。線の引き方や塗り方、レイヤーの分け方(そもそもAIが発展したらレイヤーを分ける必要はあるのか...?)など、ソフト上での一挙手一投足をサポートするものになるでしょう。

これは絵と違って学習データが限られていますし、それを適用できるソフトも同様に限られています。しかしながら、現状のお絵かきソフトは非常に複雑で、それは今後10年や20年と見過ごされるものではないと思います。

願わくば、そうしたお絵描き・創作を盛り上げるための活動に関わっていきたいと思います。

家族でGoogle Nest (Home)からGoogle Keepをいい感じに使う

TL;DR

  • Google Nest (=アシスタント) は、Voice Matchしたユーザーが権限を持つGoogle Keepから対象を探す
  • 家やアシスタント自身にGoogle Keepが紐づいているわけではない(ように見える)

詳細

Google Nestに対して、「やることリストに掃除を追加して」のように依頼したとき、次のようなフローチャートが実行されているようです。

graph LR;

say[「OK Google, 〇〇リストに✘✘を追加して」] --Voice Matchが無効--> who[Voice Matchの有効化を促す<br/>「アカウントに基づく情報を〜」];
say--Voice Matchが有効-->find[Google Keepのメモを検索<br/>「買い物リスト」は「ショッピング」に読み替え]
find--メモが見つかる-->add[「はい、〇〇リストに✘✘を追加しました」]
find--メモが見つからない-->create[「〜。〇〇リストを作りますか?」]

したがって、家族でGoogle Nestを使いつつタスクを共有したい時は、

  1. Voice Matchを有効化
  2. Google Keepでメモを作り、その共同編集者を招待

という手順で実現できました。

iCloudへの写真のバックアップは、iCloudに保存とデバイスのバックアップの2つある

TL;DR

  • iCloudへの課金をしないためには、最も容量が大きい写真のバックアップを無効化する必要がある
  • iCloudに保存というメニューの他に、デバイスのバックアップの中にも写真がある
  • 両方を無効化する必要がある。

手順

iCloudに保存

iCloudを選択

iCloudを選択

iCloud Photosから同期を無効化

iCloud Photosから同期を無効化

バイスのバックアップ

先程と同様、iCloudを選択

iCloudを選択

Manage Storageを選択

Manage Storageを選択

Backupsを選択

Backupsを選択

iCloud Backups から対象のデバイスを選択

iCloud Backups から対象のデバイスを選択

Backup Details から Photo Libraryをオフ

Backup Details から Photo Libraryをオフ