@Blog
日常日誌からプログラムやYOUTUBER紹介、旅日記まで日々更新中です。

GeminiCliGitHubAction【ジェミナイしぃーえるあいギットハブアクション】が出ましたね.
2025.08.11
おはようございます.GeminiCliGitHubAction【ジェミナイしぃーえるあいギットハブアクション】が出ましたね.無料枠でも使えるらしいので無料枠で使ってみました、いやーGemini Cliと同じぐらい良いかなと思うのだけども、これは無料枠では使いこなす事が出来ない.
有料枠に切り替えればそれなりに出来そうだけども無料枠は厳しい.イシュー(Issue)やプルリクエストのレビュー(Review)を1、2回ぐらいすればかなりトークンを消費します、それがGemini Cliよりアクション版のほうが多いかも知れない.
有料枠だったらサクサク進みそうな気がしているけど、定額が存在しないようなので使用した分支払いが来るかも知れないので恐いですね.
ただ、そろそろAIに課金しようかなと思い出したので、そろそろ課金します.候補はClaudePro【クロードプロ】に課金すると思います.
明日へ続く
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
あい, アクション, イシュー, ギットハブアクション, クロード, これ, ジェミナイ, そう, それ, それなり, トーク, プルリクエスト, プロ, ほう, よう, レビュー, 使用, 候補, 存在, 定額, 支払い, 明日, 有料, 消費, 無料, 課金,

今日からよさこい祭りですね.前夜祭という奴です、自分が運営しているサイトも
2025.08.09
おはようございます.今日からよさこい祭りですね.前夜祭という奴です、自分が運営しているサイトも今年はアクセス数がかなり増加傾向にあるので11日、12日はリソースブーストを使用するつもりでいます.
因みにアクセス数が多くなったのだけど、広告が安い広告しか表示させない為か収益的にはまだ赤字なサイトです、これがもう少し時間が経過すると良い広告が表示されるようになるのかなと思っています.
広告表示に関して明後日詳しく別記事で書いたものを投稿予定です.
よさこい祭りですが、今年よさこい祭りを見に行くかは分かりません.もしかしたら見に行くかもしれませんが、昔よさこい祭りを一人で見に行ったことがあったのですが、やはりお祭りは一人で行くより複数人で行ったほうが良いと思ったのでどうなるかは分かりません(考え中🤔).
よさこい祭りの時期は年々気温が上がっていくような気がしています.見に行く方も踊る人も熱中症にはお気をつけてください.もし、よさこい祭りで見かけたらスルーでお願い致します☺.
明日へ続く
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
アクセス, お気, お願い, こと, これ, サイト, スルー, つもり, ほう, もの, よう, リソースブースト, 予定, 今年, 今日, 使用, 傾向, 前夜祭, 収益, 増加, 年々, 広告, 投稿, 明後日, 明日, 時期, 時間, 気温, 熱中, 祭り, 経過, 考え, 自分, 表示, 複数, 記事, 赤字, 運営,

無料枠使い倒してGeminiCLIでEC管理サイトの土台はどうも出来たぽっい.
2025.08.08
おはようございます.無料枠使い倒してGeminiCLIでEC管理サイトの土台はどうも出来たぽっい、いやーこれは便利なんだけども自分は確認してコード修正とかをすれば良いだけになって少々肩透かし感があります.
今朝(先日)、GeminiCLIを使用する前にClaudeProに加入するか凄く悩んだのですが、結局、仕事で使用しているので、そこで何やらはわかる感じなので今回は断念しました.Claudeを使用するとgithubと連携できる訳です.それもClaudeProでも連携できる形なのでClaude Code Actionが出来る訳です、月に3000円ぐらい支払えばClaudeProでもかなり出来ます.個人開発や零細企業、小規模開発などは使用して良いらしいのでまぁ全自動で開発できます.
https://github.com/apps/claude ←リンクをアドレスバーへ貼り付けエンター
人はClaudeが生成したものを確認し再度指示を出すという事を繰り返して製品(サービス)を作り上げていくというサイクルで大丈夫.
多分、近い将来起こり得るのは上流工程の人材しか要らなくなるという図式ですね.現段階でも全自動化は可能だと思います.
明日へ続く
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
アドレス, エンター, コード, これ, サービス, サイクル, サイト, それ, バー, もの, リンク, 上流, 人材, 今回, 今朝, 仕事, 付け, 企業, 使い, 使用, 便利, 修正, 個人, 先日, 加入, 可能, 図式, 土台, 大丈夫, 将来, 小規模, 工程, 感じ, 指示, 断念, 明日, 段階, 無料, 生成, 確認, 管理, 結局, 肩透かし, 自分, 自動, 製品, 連携, 開発, 零細,

Gemini CLIのコマンド一覧集の日本語に翻訳したものを置いときます.v0.1.15
2025.08.05
おはようございます.Gemini CLIのコマンド一覧集の日本語に翻訳したものを置いときます.バージョンは0.1.15になります.それなりにエックスにポストしてビュー数が多かったので需要があるかなと思ってブログ記事にしました.

世の中的にはバイブコーディングや人工知能やと騒がれていますが自分はコードを書くのが好きなんだなぁと言うことが分かってきました.コードを書くのは面倒くさいけどやっぱ好きなのだという事と確かに人工知能に質問や指示を出すと瞬時に答えが返ってくるのは仕事では良いかと思います、土台はそれで良いと思うけど最終的に最後は人の手で修正をかけるのが良さそうだと感じがします.
これも今のところはそう思うだけでそのうち完璧な物が指示書だけでコードが出力される時代が来るのかなぁと考えることがあるのだけども、それって面白いですかね?そして誰得なんだろうか?今やっている事って巨人テック企業に対価を払って情報提供しているようにも思えるですよね.便利さと引き換えに最終的に摂取される気がしますと言いつつ便利なので使っているですけどね、悩ましいぞっと(:D
明日へ続く
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
(:, エックス, コード, こと, コマンド, これ, そう, それ, それなり, テック, ところ, バージョン, バイブコーディング, ビュー, ブログ, ポスト, もの, よう, 一覧, 世の中, 人工, 仕事, 企業, 便利, 修正, 出力, 土台, 好き, 完璧, 対価, 巨人, 引き換え, 情報, 感じ, 指示, 提供, 摂取, 日本語, 明日, 時代, 最後, 最終, 瞬時, 知能, 確か, 答え, 翻訳, 自分, 記事, 質問, 需要,

サブスクリプションというのは怖いなーと思うわけだけども
2025.08.04
おはようございます.サブスクリプションというのは怖いなーと思うわけだけども使用する側するからすると美味しいツールだと思います.殆どの人が使い倒すことが出来ないまま毎月お金を支払っている.
自分もネトフリ契約しているけど全く使用しないぐらいこの頃は観ていないのだけども毎月お金を支払っている.そんなサブスクリプションで、この頃恐いサブスクリプションを見つけてしまった.
それがmyIQというIQテストや性格診断や何やら出来るサイトだけども、IQテストを行ったあと結果を知りたい場合、料金を支払うことになる.その時、自動的にサブスクリプションにも同時加入になるので恐い(それが7日間で自動更新だとか怖くない?).その他にもIQテストを結果を見るまでにもその他のサービスを勧めてくるので、全部キャンセルで良いのに人によっては加入する人もいるだろうと.
自分が思うにIQテストの結果は他のIQテストと同等だったので、それなりに合っているとは思います、これが詐欺的だと多分、サブスクリプションの契約は通らないだろうけどそこはちゃんとしているだと思います.

因みにIQテストはまぁまぁになるのだけど自分は賢くはないと思っています.知識もそんなに無いし何せ、面白い話も出来ないしましてや饒舌多弁でもないのだから.
明日へ続く
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
あと, ぁまぁになるのだけど, お金, キャンセル, こと, これ, サービス, サイト, サブスクリプション, そこ, その他, それ, それなり, ツール, テスト, ネトフリ, まま, わけ, 使用, 全部, 加入, 同時, 同等, 場合, 多弁, 契約, 性格, 料金, 明日, 更新, 殆ど, 毎月, 知識, 結果, 自分, 自動, 自動的, 診断, 詐欺, 饒舌,

下期観に行きたい映画リストはあるのだけども.高知県で上映されるのか
2025.08.03
おはようございます.下期観に行きたい映画リストはあるのだけども.高知県で上映されるのか分からないので、何を観に行くかは大雑把にしか記載出来ないけど書いていきます.
まずは下期の最初はジュラシック・ワールドを無料で観に行きます、あと順不同で観ようと思っている映画を書いていくと宝島、爆弾、8番出口、ひゃくえむ、トロン:アレス、アバター、沈黙の艦隊、果てしなきスカーレット等になります.これらの映画は高知県で上映されるのであれば恐らく観に行く確率が高いと思います.
因みに何かこれ以外にも観たい映画があれば観に行くのだけども、今のところ映画予告を観てみたいかもと思っているだけで気が変わる可能性は大いにあります.
自分は年間に最低でも12本の映画は観ていると思います、自分の中で映画は唯一の娯楽なのかも知れない、ゲームもたまにするけど映画より頻度は高くないからね.映画はもう記録を取り出してから353本の映画を映画館で観ています.

計算すると凄いお金を映画館に落としている気がしてならないが…唯一の娯楽なので良しとしてます.
明日へ続く
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
あと, アバター, アレス, お金, ゲーム, これ, これら, ジュラシック・ワールド, スカーレット, たま, ところ, トロン, ひゃく, みたい, リスト, 上映, 下期, 予告, 以外, 出口, 可能, 唯一, 大雑把, 娯楽, 宝島, 年間, 明日, 映画, 最低, 最初, 沈黙, 無料, 爆弾, 確率, 自分, 艦隊, 計算, 記載, 記録, 順不同, 頻度, 高知,

さくらインターネット株を700円台の時に友人Aに紹介しておいて
2025.07.30
おはようございます.さくらインターネット株を700円台の時に友人Aに紹介しておいて自分はお金に余裕がないので買っていないという始末.
そのさくらインターネットの株はいま3000円台になっていて、自分は結構こういうの当たるなという思いがあります(現在暴落中ですが).その友人Aがその後その株を購入したかどうかは知らないのだけども.
尚、株で儲けたいのなら大企業の経営がちゃんとしている会社か、ボロ株を買うかどちらかになると思っていますとは言ってもこれはショート買いではなくロングで株を保有する事を考えて記載しています.
いま余裕資金があるのなら自分はせっせと大震災に強い株を買いますね.これは日本で近い将来起こり得ることなので震災が起きると絶対に上がると思います.逆に言えば大震災が起きると殆どの株は下がると思います.
国難級の大震災が起きると防衛関連の株や建設業の株、あと医療関係の株以外は急落するのではないかと.
この自分の考えはゴールドラッシュで儲かったのは金脈を一攫千金で当てようとした人ではなく、スコップや宿を提供した人という所から来ています、また本屋さんで儲かるよと書いて置いている本にはもう儲からない手法が書いているのと同じです.大体、人が読まない分厚い本の方がお得な情報が載っています.
明日へ続く
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
あと, いま, インターネット, お金, コールド, こと, これ, さくら, サン, ショート, スコップ, その後, どちら, ラッシュ, ロング, 一攫千金, 以外, 企業, 会社, 余裕, 保有, 医療, 友人, 国難, 大体, 大震災, 始末, 将来, 建設, 思い, 急落, 情報, 手法, 提供, 日本, 明日, 暴落, 本屋, 殆ど, 現在, 紹介, 経営, 絶対, 考え, 自分, 記載, 買い, 資金, 購入, 金脈, 関係, 関連, 防衛, 震災,

台湾旅行へ行ってみたいけど、地元の空港を使うと日帰りは無理みたい
2025.07.29
おはようございます.高知龍馬空港(高知空港)から台湾へ行くチャーター便が来年の3月まで延長されたそうです.英語も話せないけど、台湾は日本語が結構通じるというので海外旅行初心者には良い国だとされているそうです.
何故、台湾に行きたいと思ったのかは、唯何となく行ってみたいという漠然と思ったから.
高知空港から台湾行きは今のところ週二便しか出ていなくて必然的にホテルに泊まらないといけない.飛行機が台湾に飛ぶのは水曜日と土曜日だけなので仕事も休まないと旅行にはいけない.
これが毎日か頻度が増えて飛ぶようになるらしいので、そうなった時に日帰りで台湾旅行に行ってみたいと思っています.
因みに挿絵動画はいま炎上中のいけちゃんの動画を使用しています(悪意はありません).
明日へ続く
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
いま, これ, そう, チャーター便, ところ, ホテル, よう, 仕事, 使用, 初心者, 動画, 台湾, 土曜日, 延長, 必然, 悪意, 挿絵, 旅行, 日帰り, 日本語, 明日, 来年, 毎日, 水曜日, 海外, 炎上, 空港, 英語, 行き, 頻度, 飛行機, 高知, 高知空港,

今日から3ヶ月間、ダイエット食事を行うことに.
2025.07.28
おはようございます.自分の身体にテコ入れを行います.今日から3ヶ月間、ダイエット食事を行うことにしました.3ヶ月後にどれぐらい痩せれているかは分からないけど、このままのままではヤバいという事でかなり頑張ります.
これから3ヶ月間は蒸し野菜と蒸し鶏肉などを夜と昼食べることにします.これで効果があれば良いなと思っています.体重減少してきたら運動も再開したいなと思っています.
マイナス15kg痩せれればまぁぎり標準になると思うのでそこまでは落としたい.

昔、痛風の疑いがあるということで、蒸し野菜生活をしたことがあり、体重減少出来たのですがその後のリバウンド的になったのが良くなかった.今度はリバウンド的にならないように徐々に食生活を変えていきたいと思います.
因みに急激に痩せると太りやすい物質が生まれるらしいのだけども、そこは筋肉でカバー出来そうなので頑張ってみたいと思います.
尚、3ヶ月間後には体重の推移をブログに記載したいと思っています.
明日へ続く
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
ぁぎり, カバー, ヶ月, こと, これ, そう, そこ, その後, ダイエット, テコ入れ, どれ, ブログ, マイナス, まま, ヤバ, よう, リバウンド, 今度, 今日, 体重, 再開, 効果, 急激, 推移, 明日, 月間, 標準, 減少, 物質, 生活, 疑い, 痛風, 筋肉, 自分, 記載, 身体, 運動, 野菜, 食事, 食生活, 鶏肉,

数年ぶりに期日前投票に行きました、この投稿が公開した頃には
2025.07.23
おはようございます.数年ぶりに期日前投票に行きました、この投稿が公開した頃には結果がわかった頃になるだろうなぁ.自分は金曜日に期日前投票に香南市の市役所まで行ってきました、階段を使って3階まで行ったので息が苦しくなりました、これが太っている人のデメリットです(笑).
期日前投票なんて数年ぶりなので何をどうしたら良いかなどを事前にYOUTUBEで見ていきました、いい歳のおっさんがオロオロしていたら怖がれるので.
行ったら「あー」そう言えばこういうのだったというのを思い出して何もトラブルなくスームズに投票を終えて市役所を後にしました.
今回は期日前投票に行った理由は政治が変わりそうな気がしたので投票に行きました、自民党が大きく席を失うのかそうでないのかは、これを書いている時は分からないのだけども何か変わりそうな気がしたので一票を無駄にしたくないなという思い.
明日へ続く
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
おっさん, これ, スームズ, そう, デメリット, トラブル, ふり, 事前, 今回, 公開, 市役所, 思い, 投票, 投稿, 政治, 明日, 期日, 無駄, 理由, 結果, 自分, 自民党, 金曜日, 階段, 香南,

プログラミング絶望ラジオは為になるなぁと思う.
2025.07.22
おはようございます.先日の休みは風が強くて飛行機が低飛行で飛んでいたりして少々怖いなーって思いながらプログラミング絶望ラジオを聞きていました.プログラミング絶望ラジオは良いです和むなぁー.
技術的なことはラジオを聞いてもらいたいのでここでは記載しませんが、技術的な話以外で言えば壁にプログラミング絶望ラジオと書いているのだけどこの文字が動くです.これどうやってるだろうというのが凄く気になりました.
壁に緑のシートでも貼っているようでもなさそうなんですけど、上手く動いて消えていくですよ.これどうやって出来るのだろうかというのが、凄く気になりましたね.
「あー」悩ましい謎です.
明日へ続く
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
ここ, こと, これ, シート, そう, プログラミング, よう, ラジオ, 以外, 休み, 先日, 技術, 文字, 明日, 絶望, 記載, 飛行, 飛行機,

映画、Fukushima 50(フクシマ フィフティ)を観ました.
2025.07.16
おはようございます.映画、Fukushima 50(フクシマ フィフティ)をネトフリで再度観ました.いろいろと考えさせられる内容だった.これを見ると南海トラフ巨大地震が発生したときに愛媛県にある伊方原発は大丈夫なのかという事が脳裏に過ぎりました.調べてみると伊方原発は津波10メートルまで耐えれるということらしい、もし仮に南海トラフ巨大地震が発生したとしても伊方原発の方には4.5メートルの津波しか来ないとの事.
なので福島の原発事故(災害)のような事は発生しないという事らしいのだけども、福島の原発も10メートルを超える津波は来ないという想定でしたが、東日本大震災時には10メートルを超える津波が押し寄せてきたわけです.
想定外のことが起こるかもという事を考えて設計していない、これが事なかれ主義な国のすることだなと…今では原発反対という人も減ってきているけれども映画フクシマフィフティを観ると島国の日本で原発を稼働させるのはリスクの方が大きいと思います.
これから将来の起こることを考えるとクリーンな発電所を増やしていくべきなのではないのかと・・・.
本当に映画は事実に基づく映画なので、ただただ大変な思いをした現場の方々には何も言えないですよ.後手後手の東電の対応や政治家などに不信感を抱いた自分がいました.実際は、それぞれ懸命に頑張っていたと思いますが、、、、.これが日本という国なのかも知れないですね.
明日へ続く
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
いろいろ, グリーン, こと, これ, それぞれ, とき, トラフ, ネトフリ, フィフティ, フクシマ, フクシマフィフティ, メートル, よう, リスク, わけ, 不信, 主義, 事実, 事故, 伊方, 内容, 南海, 原発, 反対, 地震, 大丈夫, 大変, 大震災, 対応, 将来, 島国, 巨大, 後手, 思い, 想定, 愛媛, 懸命, 政治, 方々, 日本, 明日, 映画, 東日本, 東電, 津波, 災害, 現場, 発生, 発電, 福島, 稼働, 脳裏, 自分, 設計,

チャットワークのAPIを使ってみました.プロンプトでほぼ書いています.
2025.07.13
おはようございます.チャットワークのAPIを使ってみました.プロンプトでほぼ書いたコードになります、チャットGPTの無料版にリファレンスのURLリンクとPHPのクラス化、リターンに$thisで返却出来る所は$thisを使用してスマートにコードを書いてと指示を出しました.
出来上がったコードが下記になります.ソースコードは自分の方でモンキーテスト的に動かしてみましたが、ちゃんと動作するようです.
<?php
class ChatworkClient
{
private string $apiToken;
private string $baseUrl = 'https://api.chatwork.com/v2';
private int $retryCount = 3;
private int $retryDelay = 1000000; // microseconds
public function __construct(string $apiToken)
{
$this->apiToken = $apiToken;
}
public function setRetry(int $count, int $delayMicroseconds): self
{
$this->retryCount = $count;
$this->retryDelay = $delayMicroseconds;
return $this;
}
private function request(string $method, string $path, array $params = []): array
{
$attempts = 0;
while ($attempts < $this->retryCount) {
$attempts++;
$ch = curl_init();
$url = $this->baseUrl . $path;
if ($method === 'GET' && $params) {
$url .= '?' . http_build_query($params);
}
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$headers = ['X-ChatWorkToken: ' . $this->apiToken];
if (in_array($method, ['POST', 'PUT', 'DELETE'])) {
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, $method);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($params));
$headers[] = 'Content-Type: application/x-www-form-urlencoded';
}
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
$body = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_HTTP_CODE);
$error = curl_error($ch);
curl_close($ch);
if ($error) {
if ($attempts < $this->retryCount) {
usleep($this->retryDelay);
continue;
}
throw new RuntimeException("cURL error after {$attempts} attempts: {$error}");
}
if ($status >= 200 && $status < 300) {
return [
'status' => $status,
'body' => $body ? json_decode($body, true) : null,
];
}
if ($attempts < $this->retryCount && $status >= 500) {
usleep($this->retryDelay);
continue;
}
return [
'status' => $status,
'body' => $body ? json_decode($body, true) : null,
];
}
throw new RuntimeException("Request failed after {$this->retryCount} attempts");
}
public function setToken(string $token): self
{
$this->apiToken = $token;
return $this;
}
public function me(): array
{
return $this->request('GET', '/me');
}
public function getMyStatus(): array
{
return $this->request('GET', '/my/status');
}
public function getMyTasks(array $filters = []): array
{
return $this->request('GET', '/my/tasks', $filters);
}
public function getContacts(): array
{
return $this->request('GET', '/contacts');
}
public function getRooms(): array
{
return $this->request('GET', '/rooms');
}
public function createRoom(array $params): array
{
return $this->request('POST', '/rooms', $params);
}
public function getRoom(int $roomId): array
{
return $this->request('GET', "/rooms/{$roomId}");
}
public function updateRoom(int $roomId, array $params): array
{
return $this->request('PUT', "/rooms/{$roomId}", $params);
}
public function deleteRoom(int $roomId, string $action = 'leave'): array
{
return $this->request('DELETE', "/rooms/{$roomId}", ['action_type' => $action]);
}
public function getMembers(int $roomId): array
{
return $this->request('GET', "/rooms/{$roomId}/members");
}
public function updateMembers(int $roomId, array $params): array
{
return $this->request('PUT', "/rooms/{$roomId}/members", $params);
}
public function getMessages(int $roomId, bool $force = false): array
{
return $this->request('GET', "/rooms/{$roomId}/messages", ['force' => $force ? 1 : 0]);
}
public function postMessage(int $roomId, string $body, bool $selfUnread = false): self
{
$this->request('POST', "/rooms/{$roomId}/messages", ['body' => $body, 'self_unread' => $selfUnread ? 1 : 0]);
return $this;
}
public function markRead(int $roomId): self
{
$this->request('PUT', "/rooms/{$roomId}/messages/read");
return $this;
}
public function markUnread(int $roomId): self
{
$this->request('PUT', "/rooms/{$roomId}/messages/unread");
return $this;
}
public function getMessage(int $roomId, int $messageId): array
{
return $this->request('GET', "/rooms/{$roomId}/messages/{$messageId}");
}
public function getRoomTasks(int $roomId, array $filters = []): array
{
return $this->request('GET', "/rooms/{$roomId}/tasks", $filters);
}
public function createTask(int $roomId, array $params): array
{
return $this->request('POST', "/rooms/{$roomId}/tasks", $params);
}
public function uploadFile(int $roomId, string $filePath, string $message = ''): array
{
if (!file_exists($filePath)) {
throw new InvalidArgumentException("File not found: {$filePath}");
}
$ch = curl_init();
$url = $this->baseUrl . "/rooms/{$roomId}/files";
$cfile = curl_file_create($filePath);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['X-ChatWorkToken: ' . $this->apiToken]);
curl_setopt($ch, CURLOPT_POSTFIELDS, ['file' => $cfile, 'message' => $message]);
$body = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_HTTP_CODE);
if (curl_errno($ch)) {
throw new RuntimeException(curl_error($ch));
}
curl_close($ch);
return ['status' => $status, 'body' => json_decode($body, true)];
}
}
人が今回のコードを書いた場合、早い人でも10分ぐらいはコードを書かないといけないと思います、どんなに早くてもそれぐらいの時間は必要だと思いますが、生成AIはこれを数十秒で書ける訳ですから、確実に時間短縮になります.
なので人工知能が使える現場は間違いなく最初のコード出力は人工知能に任せた方が良いです.特に新規案件の土台は生成AIに任せると開発コストは削減出来ます.
明日へ続く
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
```, クラス, コード, コスト, これ, スマート, ソース, それ, チャット, テスト, プロンプト, モンキー, よう, リターン, リファレンス, リンク, ワーク, 下記, 人工, 今回, 使用, 出力, 削減, 動作, 土台, 場合, 必要, 指示, 新規, 明日, 時間, 最初, 案件, 無料, 現場, 生成, 知能, 短縮, 確実, 自分, 返却, 開発, 間違い,

映画、スーパーマンを観てきました.エンドクレジットにおまけ有り
2025.07.12
おはようございます.映画、スーパーマンを観てきました.エンドクレジットにおまけ有りのスーパーマンを観てきました、これ大人が観て楽しめるかという回答で言うとまぁまぁ楽しめるかなと思います.
ストーリー展開は良きアメリカ映画のストーリー展開だと思ってください、なので安心して見えます.でも何ていうか今の時代を上手く写しているようにも思えました.いまアメリカが置かれている政治的な要素がこの映画を通してみて取れました.
もう一つ思ったことが、ゴジラマイナス・ワンがいかに優秀なんだと言うことが分かります.ゴジラマイナス・ワンのVFXを手掛けた白組は35人しかいない中、ハリウッドと同等の映像表現を手掛けた訳です、それに対してスーパーマンのエンドクレジットを観ているとVFXなどに関わった関係者が100人を越していたと思います.
白組優秀だわって思いますよね👏.
因みにエンドクレジットには2回おまけ映像が流れます.
まとめ、まぁまずまずの映画でした.
明日へ続く
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
アメリカ, いま, エンド, おまけ, クレジット, ゴジラ, こと, これ, スーパーマン, ストーリー, それ, ハリウッド, マイナス, よう, ワン, 一つ, 優秀, 同等, 回答, 大人, 安心, 展開, 政治, 明日, 映像, 映画, 時代, 表現, 要素, 関係,

laravelはenvで設定するのがベターですけど、そうではない環境もenvで
2025.07.11
おはようございます.laravelはenvで設定するのがベターですけど、そうではない環境もenvで構築した方が良いです、なぜかと言えばテスト環境との切り替えが簡単になるということなんです.
使い方はこんな感じまずComposerのライブラリをインストールします.
composer require vlucas/phpdotenv
次に使用方法はこんな感じです.こうしとけば結構楽になりますし使いまわしの時に便利です、Laravel(ララベル)ってライブラリの纏まりで構築されているのでワードプレスの環境でも組み込む事は可能です.自分が使用しているのはenv周りとデータベース周りのライブラリです.
require_once __DIR__ . '/vendor/autoload.php';
use Dotenv\Dotenv;
// .env ファイルを読み込む
$dotenv = Dotenv::createImmutable(__DIR__);
$dotenv->load();
// 環境変数の取得
echo getenv('APP_NAME'); // ✅ OK
echo $_ENV['APP_NAME']; // ✅ OK
echo env('APP_NAME'); // ❌ Laravel外では未定義
そうそう.envをルート上に置いている場合は.htaccessに下記の記述を書くことをお忘れなく!!これを置いていない場合は筒抜けになります(エンジンエックスの場合も記載しときますね).
<Files .env>
require all denied
</Files>
location ~ /\.env {
deny all;
}
明日へ続く
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
```, インストール, エックス, エンジン, こと, これ, データベース, テスト, ファイル, プレス, ベター, ライブラリ, ララベル, ルート, ワード, 下記, 使い方, 使用, 便利, 切り替え, 取得, 可能, 周り, 場合, 変数, 定義, 感じ, 方法, 明日, 構築, 環境, 筒抜け, 簡単, 自分, 記載, 記述, 設定,

格安SIMでも4Gから5Gに切り替える事が無料で出来るみたい.
2025.07.07
おはようございます.格安SIMでも4Gから5Gに切り替える事が無料で出来るみたいだったので、早速切り替えてみました.5G帯域を使用できるようになるには、ちょっと時間が掛かりましたがこれで外で使用するときは5Gで使用出来ます.
5G帯域が役に立つのは自分の場合は当分の間無いかなと思っています、平日はリモートワークなのでwifi環境下にいるのでほぼモバイル通信費がかからないです.
そう思っていたのですが、休みの日に外で勉強する時間を設けようと今思っていてその時にディザリングすることもあるので、そういう時に使用すると結構便利なんじゃないかなって思っていて近日中に試してみたいと思います.
トイウコトで近日中にオーテピア高知図書館に出かけてみます.カーミルでも良かったのですが高知市の方はミリ波もカバーしているようなので速いかなと思っています.
明日へ続く
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
オーテピア, カー, カバー, こと, これ, ディザリング, トイウコト, とき, みたい, ミリ, ミル, モバイル, よう, リモート, ワーク, 休み, 使用, 便利, 勉強, 図書館, 場合, 帯域, 平日, 当分, 明日, 時間, 格安, 無料, 環境, 自分, 近日, 通信, 高知,

FF11オンラインを一時停止しました、やっぱ続かない
2025.07.06
おはようございます.FF11オンラインを一時停止しました、やっぱ続かないなぁー.ソロでレベルアップが大変なのともう一つは時間が勿体ないと感じるので、どうもゲームのソロは続かない感があります.そもそもRPG系に費やす普通の人のプレイ時間よりもかなり少ないのです.
因みにFF16もFF7リバースもまだ攻略していません、まだまだ時間がかかりそうです.そもそも月に一回ゲームをプレイしたら良い方で休日にゲームに費やす時間よりもボーっとしてたり、コードを買いたり映画観たりしている方が多いです.
あと本を読んだりしていることの方が多くてゲームに時間を避けないのが現状かな?
ゲームをしてなにか得ることもあるのだけども、まぁあんまり無いかな.これがオンラインゲームで仲間がいれば違う可能性がありますが、どちらと言えば仲間の輪に入るタイプではなく、一人の方が楽だなって感じるタイプです.
人生のなかで仕事が無くなればどれぐらい時間が余るのだろうかと思った時、自分の場合、あんま余暇に時間を割いている時間はあんまない気がしています、例えばブログを書いたり創作したりと何かしら手を動かすしたりして何か活動していると思います.
因みに今の学生さんが大人になる頃には仕事は肉体労働しかないじゃないかなって思うぐらい人工知能のIQは上がっています.多分、20年後には仕事の量はいまの半分ぐらいまで少なくなっている可能性があります.昔、学校崩壊というものがありましたが、これからは仕事崩壊という事が中小企業や零細企業から起こる気がしています.
学校崩壊というのは今もあるか分からないけど、教師の話を聞かずに生徒が好き勝手行動するようになることです、それを防ぐ為に今では教員二名体制になっているようです、その大人版が会社でも起こるような気がしています.会社の場合はクビにすれば済むことですけど下手すると倒産するケースも出てきそうです.
明日へ続く
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
あと, あんま, いま, オンライン, クビ, ケース, ゲーム, コード, こと, これ, サン, そう, そもそも, それ, ソロ, タイプ, どちら, どれ, なか, なに, プレイ, ブログ, ぼー, もの, よう, リバース, レベルアップ, 一つ, 一時, 下手, 中小, 人工, 人生, 仕事, 仲間, 企業, 休日, 会社, 体制, 余暇, 倒産, 停止, 創作, 労働, 勝手, 半分, 可能, 場合, 大人, 大変, 好き, 学校, 学生, 崩壊, 攻略, 教員, 教師, 明日, 映画, 時間, 普通, 活動, 現状, 生徒, 知能, 肉体, 自分, 行動, 零細,

Llama-3-ELYZA-JP-8Bとは何か?モデルという奴です.
2025.07.03
おはようございます.Llama-3-ELYZA-JP-8Bは、MetaのLlama 3(8Bパラメータ)をベースに、日本語の指示応答能力を強化するためELYZAがファインチューニングした日本語特化型の大規模言語モデルです。
ではモデルとは何か?モデルとは、データからパターンやルールを学習し、新しい入力に対して予測や生成を行うための数学的・計算的な仕組みやプログラムのことです。
今回、自分が試したのはLlama-3-ELYZA-JP-8Bの一番軽量ものを試してみました.軽量すぎてたまに回答が無限ループに陥ることがあります.これはカーソル(cursor)やディビン系でも無限ループに陥ることがあるらしいです.俗に言うトークン食いですね.
トークン食いが一度発生すると次のプロンプトにも影響が出る場合があるので、一度離脱して再度プロンプトを投げることで回避出来るようです.
因みにモデルをCPUで動かしたい場合は、llama.cpp
で動かすようにするのだけど、既存のモデルをggufに一度、変換してあげる必要があります.そうすることでグラボが貧弱でも動きます.
明日へ続く
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
カーソル, グラボ, クン, こと, これ, ため, データ, ディビン, トー, パターン, パラメータ, ファインチューニング, プログラム, プロンプト, ベース, モデル, もの, よう, ループ, ルール, 一番, 予測, 今回, 仕組み, 入力, 回答, 回避, 場合, 変換, 学習, 強化, 影響, 必要, 応答, 指示, 数学, 既存, 日本語, 明日, 無限, 生成, 発生, 能力, 自分, 規模, 言語, 計算, 貧弱, 軽量, 離脱, 食い,

検索から離れていく時代になった時の対処法というかこれしか対応策がない.
2025.07.02
おはようございます.そろそろGさんが日本でも検索から生成AIに切り替えを行いそうな気配がありますというのは、自分でモバイル検索していたら検索が対話型に切り替わった時があったのでそろそろな予感がします.
最初に対話型(AIチャット)に切り替わった時に影響を受けやすいサイトは「何々とは」を教えてくれるアンサーサイトだそう、そういうサイトはかなりアクセス数が激減するとのこと、また広告収益の出てないサイトも同じくアクセス数が減るとのこと、逆に影響を受けにくいサイトは広告収益を生み出しているサイトだそうです.
では、どうやってアクセス数を対話型になった時に補うかの話ですが、もうこれしかないと自分は思っています.SNSのフル活用です、フル活用なので一つのSNSの活動をするのではなく複数のSNSを運用し集客に繋げるしか道のりはないじゃないかと.
あと、ネットで商品を販売しているサイトは大手、例えば楽天やアマゾンと言ったサイトに出店しないと成り立たない時代になると思います.本当に人気商品を持っているサイトはダイレクトに物が売れると思いますが、そうではない他店舗の商品を売っている小売サイトは影響を受けると思います.
なので、大手のサイトに店舗を構えることは必須と言えるでしょう、またSNSにも力を入れることや他店舗よりも安く売らないと厳しい時代になりそうです.
尚、Gさんは人工知能対話型検索に広告を挟むことを検討しているので広告を使用するのも一つの手なのかもしれません.
明日へ続く
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
アクセス, あと, アマゾン, アンサーサイト, こと, これ, サイト, サン, そう, ダイレクト, チャット, ネット, プル, モバイル, 一つ, 予感, 人工, 人気, 使用, 出店, 切り替え, 収益, 商品, 大手, 対話, 小売, 広告, 店舗, 影響, 必須, 日本, 明日, 時代, 最初, 検索, 検討, 楽天, 気配, 活動, 活用, 激減, 生成, 知能, 自分, 複数, 販売, 運用, 道のり, 集客,

GeminiCliを使ってみました、まぁまぁ使えるかもしれない.
2025.06.30
おはようございます.GeminiCliを使ってみました、まぁまぁ使えるかもしれないというのが第一印象です、ただデザイン修正には使えそうにない.デザインを提示すればその通りになおしてくれると思うのだけどテキストだけの指示ではなかなか難しいと感じました.
ディレクトリ配下にあるソースコードを読ます場合は下記のようなプロンプトを一度打つとスムーズに機能追加してくれるので良いですよ.
コードベースを把握して
最初にこの言葉をGeminiに投げることでどんな機能のプログラムコードなのか把握します.これがないと駄目な訳でもないだけどもスムーズに指示出しが出来ます.
特定のコードに対して修正やらを書けたい場合は@(アットマーク)を入力するとソースコードの候補が表示されるので選択をしてプロンプトを指示を出すと良いです.
あとGeminiCliを終了する場合は下記のコマンドを打てば終了します.
/exit
!を入力しls -aなどと入力するとMacの場合は階層のファイル一覧が表示されます的なことも出来ます.

ともあれ、ジェミナイ(ジェミニ)は無料で使用できるトークンも他よりも比較的に多いので自分としてはかなり嬉しいです、休日の個人開発はこれで何とか頑張っていけそうです.
明日へ続く
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
あっとまーく, あと, コード, こと, コマンド, これ, ジェミナイ, ジェミニ, スムーズ, ソース, そう, ディレクトリ, テキスト, デザイン, トーク, ファイル, プログラム, プロンプト, ベース, よう, 一覧, 下記, 休日, 使用, 修正, 個人, 候補, 入力, 出し, 印象, 場合, 把握, 指示, 提示, 明日, 最初, 機能, 比較, 無料, 特定, 終了, 自分, 表示, 言葉, 追加, 通り, 選択, 配下, 開発, 階層, 駄目,

負の連鎖ってあるだと思う.小さいことから大きな事まである世の中だけども.
2025.06.23
おはようございます.負の連鎖ってあるだと思う.小さいことから大きな事まである世の中だけどもこれを断ち切るには仏教が良いじゃないかなって思っている.日本が戦後、復讐をしなかったのも仏教や宗教の根本的な考えが西洋文化とは違うからってのがあると思います.
負の連鎖、憎しみなどが生まれるのは仕方がない事だと思うだけども、それを許すというか消化させる力というかそういう物はなんか仏教が適している気がしていますとは言え、自分は仏教のことをよく知っている訳でもないだけども、何だろう日本人が持っている何か根底に根付いているものが戦後、大きな復讐もせずに今に至っているだと.
負の連鎖の渦中にいると思ったら足掻かずに、流れに身を任せるのも一つの手段かと思います、何が許せずにいるのかを心を沈めて考えることが大事になると思います.考えたり思い返して怒りや憎しみが沸々とわいてきた事が恐らく自身が許せずにいる事柄だと、それを許すというのは中々難しいことだけども、負の連鎖の中にいるともっと負が大きくなるので怒りや憎しみを手放すことが大事だと思います.
何故、負は巨大化していく戦争を見てわかると思うのだけども争えば闘うほど事態は悪くなり最終的に共倒れになります.すっと手放す事が出来れば良いのだけども、中々、難しい.
阿呆な権力者がはじめた事を止めるのは難しいという事を人は体験せずに理解する事ができる世の中になれば良いのにと思う今日このごろです.
明日へ続く
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
こと, このごろ, これ, それ, もの, 一つ, 世の中, 事態, 事柄, 今日, 仏教, 仕方, 体験, 共倒れ, 大事, 宗教, 巨大, 復讐, 怒り, 憎しみ, 戦争, 戦後, 手段, 文化, 日本, 日本人, 明日, 最終, 根底, 根本, 権力, 流れ, 消化, 渦中, 理解, 考え, 自分, 自身, 西洋, 連鎖, 阿呆,

AIで記事を学習して新たな記事を生み出すにはお金が必要だと思っていたがそうでも.
2025.06.22
おはようございます.AIで記事を学習して新たな記事を生み出すにはお金が必要だと思っていたがそうでもなくローカルPCでそこら辺に落ちているLlamaモデルを持ってきてチューニングすれば何とかなるじゃねぇという思いに至った.
実はあなたの手元にあるPCと、そこら中に「落ちている」オープンソースのAIモデル、特にLlama 3があれば、十分記事が生成できるんです。
ローカルAI記事生成は、もはや夢物語じゃない
「AIで記事生成」と聞くと、SFのような世界や、大企業だけが使える特権のように感じるかもしれません。しかし、今は違います。オープンソースの強力な言語モデル、特にMetaが公開したLlama 3の登場は、この常識を大きく覆しました。
Llama 3は、その性能の高さにもかかわらず、誰でも無料で利用できるという点が最大の魅力です。さらに、80億パラメータの8Bモデルであれば、最新のゲーミングPCとまではいかなくとも、ある程度の性能を持つPCであれば十分に動作します。これにより、高額なクラウドサービスを利用せずとも、自分のPCでAI記事生成の環境を構築することが現実的になりました。
なぜLlama 3があなたのPCと相性抜群なのか?
Llama 3がローカルPCでの記事生成に適している理由はいくつかあります。
- 完全無料のオープンソース: 利用に費用がかからないため、予算を気にせずAIを試したり、本格的に導入したりできます。
- 選べるモデルサイズ: Llama 3には様々なサイズのモデルがあり、PCのスペックに合わせて選べます。特に8Bモデルは、個人利用に最適なバランスを持っています。
- 活発な開発者コミュニティ: 世界中の開発者がLlama 3を使った新しいツールや効率的なチューニング方法を日々共有しています。困ったときには助けを借りられる心強い味方です。
- 「量子化」でさらに軽量に: モデルのサイズを大幅に小さくする「量子化」という技術を使えば、より少ないメモリでLlama 3を動かせるようになります。これにより、より多くのPCで利用の道が開けます。
あなたのPCを「記事生成マシン」に変える秘訣
もちろん、いきなりプロのライター並みの記事をAIに書かせるのは難しいかもしれません。しかし、ちょっとした工夫で「何とかなる」レベルの記事生成は十分に可能です。
- 少量のデータでファインチューニング: 大量の記事データは不要です。あなたが書きたい記事のテーマやスタイルに合った、質の良い記事を数十〜数百程度集めてLlama 3を学習(ファインチューニング)させれば、その分野に特化した記事生成能力が格段に向上します。
- プロンプト(指示文)の工夫: AIへの「指示の出し方」は非常に重要です。具体的で明確なプロンプトを与えることで、チューニングが完璧でなくても、驚くほど質の高い記事が生成できます。これはまるで、優秀なアシスタントに的確な指示を出すようなものです。
- 効率的な学習方法の活用: 「LoRA(Low-Rank Adaptation)」のような効率的なファインチューニング手法を使えば、少ないGPUメモリでも短時間でモデルを特定のタスクに最適化できます。
あなたの創造性が、今、AIで加速する
かつては一部の専門家や企業にしか手の届かなかったAIによる記事生成が、今やあなたのPCで実現できる時代になりました。これはまさにAI技術の「民主化」です。
とまぁそういう訳なので何とかしてみますが、ファインチューニングにどれぐらい時間がかかるのかが未知数だったりする.
ファインチューニングPythonコード
以下のPythonコードは、Llama 3モデルをロードし、提供されたテキスト記事でファインチューニング(LoRA使用)を実行し、結果を保存します。 上記の入力値は、このコードに自動的に反映されます。 このコードをPythonファイル(例: `finetune_llama.py`)として保存し、実行してください。
import os
import torch
from datasets import load_dataset
from transformers import AutoTokenizer, AutoModelForCausalLM, BitsAndBytesConfig, TrainingArguments, Trainer
from peft import LoraConfig, get_peft_model, prepare_model_for_kbit_training, TaskType
# GPUの利用可能性を確認
print("GPUが利用可能か確認中...")
if not torch.cuda.is_available():
print("GPUが見つかりません。Fine-tuningにはGPUが強く推奨されます。")
# GPUがない場合は、ここでスクリプトを終了するか、CPUモードで続行するか選択できます。
# exit("GPUがないため終了します。")
else:
print(f"GPUが利用可能です: {torch.cuda.get_device_name(0)}")
# --- 1. モデルとトークナイザーのロード ---
# Llama 3モデルのパスを指定します。Hugging Faceのモデル名(例: "meta-llama/Llama-3-8B")
# またはローカルにダウンロードしたモデルのパスを指定してください。
MODEL_NAME = "meta-llama/Llama-3-8B" # ユーザーが入力したパスがここに挿入されます
print(f"モデルとトークナイザーをロード中: {MODEL_NAME}")
# 4bit量子化設定 (GPUメモリの節約に役立ちます)
# bnb_4bit_compute_dtypeは、Ampere以降のNVIDIA GPUに推奨されるbfloat16を使用しています。
bnb_config = BitsAndBytesConfig(
load_in_4bit=True,
bnb_4bit_use_double_quant=True,
bnb_4bit_quant_type="nf4", # NF4 (NormalFloat4) 量子化タイプ
bnb_4bit_compute_dtype=torch.bfloat16
)
# トークナイザーをロード
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME, trust_remote_code=True)
# Llama 3はデフォルトでbos_tokenを付与しないことがあるため、明示的に追加。
# また、padding_side='right'はLlamaモデルに推奨される設定です。
tokenizer.pad_token = tokenizer.eos_token
tokenizer.padding_side = "right"
# モデルをロードし、量子化設定を適用し、自動的にGPUにマッピングします。
model = AutoModelForCausalLM.from_pretrained(
MODEL_NAME,
quantization_config=bnb_config,
device_map="auto", # 利用可能なデバイス(GPU)に自動的にモデルを分散
trust_remote_code=True # リモートコードの実行を許可
)
print("モデルロード完了。")
# k-bit学習用にモデルを準備 (PEFTライブラリのため)
# gradient_checkpointingを有効にすることで、メモリ使用量をさらに削減できます。
model.gradient_checkpointing_enable()
model = prepare_model_for_kbit_training(model)
print("k-bit学習用にモデルを準備しました。")
# --- 2. データセットの準備 ---
# あなたのテキスト記事ファイルが格納されているディレクトリを指定します。
# 例: 'your_article_data/' の中に 'article1.txt', 'article2.txt', ... と置かれている場合
DATA_DIR = "./your_article_data/" # ユーザーが入力したパスがここに挿入されます
print(f"データセットをロード中: {DATA_DIR}")
# 'text'形式でデータセットをロードします。指定されたディレクトリ内のすべての.txtファイルを読み込みます。
# 各ファイルが1つのエントリとして扱われます。
try:
dataset = load_dataset('text', data_files={'train': os.path.join(DATA_DIR, '*.txt')})
print(f"データセットのサンプル数: {len(dataset['train'])}")
except Exception as e:
print(f"データセットのロード中にエラーが発生しました。ディレクトリとファイル形式を確認してください: {e}")
exit("データセットロード失敗。")
# データセットをトークン化する関数
# 長い記事をモデルの最大入力長に分割します。
def tokenize_function(examples):
# Llama 3の最大入力長は通常8192ですが、お使いのGPUのVRAMに合わせて調整してください。
# ここでは一般的な値として2048を設定しています。
max_length = 2048
# truncate=Trueで最大長を超えるテキストを切り捨てます。
return tokenizer(examples["text"], truncation=True, max_length=max_length)
# データセットをトークン化します。
# num_procはCPUコア数に応じて並列処理を行い、処理を高速化します。
tokenized_dataset = dataset.map(
tokenize_function,
batched=True,
num_proc=os.cpu_count(),
remove_columns=["text"] # 元のテキスト列は学習に不要になるため削除します。
)
print("データセットのトークン化が完了しました。")
# --- 3. PEFT (LoRA) の設定 ---
# LoRA (Low-Rank Adaptation) は、元のモデルの重みをフリーズし、
# 小さなアダプター層を追加して学習させることで、効率的にファインチューニングを行います。
# これにより、GPUメモリの使用量を抑えつつ、高い性能を実現できます。
lora_config = LoraConfig(
r=16, # LoRAのランク。値を大きくすると表現力が増すが、メモリ消費も増える。
lora_alpha=32, # LoRAのスケーリング係数。rの2倍程度が推奨されることが多いです。
target_modules=["q_proj", "k_proj", "v_proj", "o_proj", "gate_proj", "up_proj", "down_proj"], # LoRAを適用する層。Llamaモデルで一般的な層。
bias="none", # バイアスを学習しない設定。
lora_dropout=0.05, # ドロップアウト率。過学習を防ぐために設定します。
task_type=TaskType.CAUSAL_LM, # タスクタイプを因果言語モデルに設定。
)
# モデルにLoRAアダプターを追加します。
model = get_peft_model(model, lora_config)
print("モデルにLoRAアダプターを適用しました。")
model.print_trainable_parameters() # 学習可能なパラメータ数を確認します。
# --- 4. 学習の実行 ---
# 学習済みモデルを保存するディレクトリ
OUTPUT_DIR = "./llama3_finetuned_model/" # ユーザーが入力したパスがここに挿入されます
# 学習の設定
training_args = TrainingArguments(
output_dir=OUTPUT_DIR,
num_train_epochs=3, # エポック数。データセットのサイズと希望する精度に応じて調整してください。
per_device_train_batch_size=1, # GPUあたりのバッチサイズ。VRAMが少ない場合は1に設定。
gradient_accumulation_steps=4, # 勾配を蓄積するステップ数。実質的なバッチサイズは per_device_train_batch_size * gradient_accumulation_steps になります。
optim="paged_adamw_8bit", # 8bit AdamWオプティマイザを使用し、メモリ効率を向上させます。
save_steps=500, # 500ステップごとにモデルを保存します。
logging_steps=100, # 100ステップごとにログを出力します。
learning_rate=2e-4, # 学習率。
fp16=True, # 混合精度学習を有効化 (GPUが対応している場合)。VRAM削減と高速化に寄与します。
max_steps=-1, # num_train_epochsに基づいて学習します。
group_by_length=True, # 同じ長さのシーケンスをグループ化し、パディングを削減します。
lr_scheduler_type="cosine", # 学習率スケジューラーのタイプ。
warmup_ratio=0.03, # ウォームアップ比率。
report_to="none", # レポート先を指定しない (wandbなどを使用しない場合)。
)
# トレーナーの初期化
# data_collatorは、モデルの入力形式に合わせてデータを整形します。
trainer = Trainer(
model=model,
train_dataset=tokenized_dataset["train"],
args=training_args,
data_collator=lambda data: {
'input_ids': torch.stack([f['input_ids'] for f in data]),
'attention_mask': torch.stack([f['attention_mask'] for f in data]),
'labels': torch.stack([f['input_ids'] for f in data]), # 因果言語モデルでは、入力自体がラベルとなります。
},
)
# 学習の開始
print("Fine-tuningを開始します...")
trainer.train()
print("Fine-tuningが完了しました。")
# --- 5. 学習済みモデルの保存 ---
# LoRAアダプターのみを保存します。これにより、ファイルサイズが小さく、効率的に管理できます。
trainer.save_model(OUTPUT_DIR)
print(f"学習済みLoRAアダプターが '{OUTPUT_DIR}' に保存されました。")
# 保存したアダプターを使って推論を行う方法の例 (コメントアウトされています):
# このコードは、ファインチューニング後にモデルをロードして推論を行うための参考例です。
# from peft import PeftModel
#
# # 元のモデルをロード (学習時と同じ量子化設定を使用します)
# base_model = AutoModelForCausalLM.from_pretrained(
# MODEL_NAME,
# quantization_config=bnb_config,
# device_map="auto",
# trust_remote_code=True
# )
#
# # 保存したLoRAアダプターを元のモデルに結合します。
# peft_model = PeftModel.from_pretrained(base_model, OUTPUT_DIR)
#
# # 推論モードに設定します。
# peft_model.eval()
#
# # テキスト生成の例
# prompt = "ローカルPCでのLlama 3ファインチューニングの利点とは"
# inputs = tokenizer(prompt, return_tensors="pt").to("cuda") # 入力をGPUに移動
#
# with torch.no_grad(): # 勾配計算を無効化し、メモリ使用量を削減
# outputs = peft_model.generate(
# **inputs,
# max_new_tokens=200, # 生成する新しいトークンの最大数
# do_sample=True, # サンプリングによる生成を有効化
# top_p=0.9, # Nucleusサンプリングの閾値
# temperature=0.7, # 生成の多様性を制御する温度
# eos_token_id=tokenizer.eos_token_id # 終了トークンID
# )
# print("\n--- 生成されたテキスト ---")
# print(tokenizer.decode(outputs[0], skip_special_tokens=True))
明日へ続く
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
```, ;;), )。, アウト, アシスタント, アダプター, あたり, アップ, あなた, いくつ, ウォーム, エポック, エラー, エントリ, オープン, オプティマイザ, お金, クラウドサービス, グループ, クン, ゲーミング, コード, コア, ここ, こと, コミュニティ, コメント, これ, サイズ, サンプリング, サンプル, シーケンス, スクリプト, スケーリング, スケジューラー, スタイル, ステップ, スペック, すべて, ソース, そこら, タイプ, ダウンロード, タスク, ため, チューニング, ツール, データ, データセット, テーマ, ディレクトリ, テキスト, デバイス, デフォルト, トー, トークナイザー, とき, どれ, トレーナー, ドロップ, バイアス, パス, バッチ, パディング, パラメータ, バランス, ファイル, ファイルサイズ, ファインチューニング, ファインチューニングコード, フリーズ, プロ, プロンプト, マシン, マッピング, メモリ, モード, モデル, もの, ユーザー, よう, ライター, ライブラリ, ラベル, ランク, リモート, レベル, レポート, ローカル, ロード, ログ, 一般, 一部, 上記, 不要, 世界, 世界中, 並み, 並列, 予算, 付与, 以下, 以降, 企業, 使い, 使用, 係数, 保存, 個人, 優秀, 入力, 公開, 共有, 具体, 処理, 出力, 分割, 分散, 分野, 初期, 利点, 利用, 制御, 削減, 削除, 創造, 加速, 助け, 効率, 動作, 勾配, 十分, 参考, 反映, 可能, 向上, 味方, 因果, 場合, 多様, 夢物語, 大幅, 大量, 失敗, 学習, 完了, 完全, 完璧, 実現, 実行, 実質, 寄与, 対応, 専門, 導入, 少量, 工夫, 希望, 常識, 強力, 形式, 必要, 思い, 性能, 手元, 手法, 技術, 抜群, 指定, 指示, 挿入, 推奨, 推論, 提供, 整形, 新た, 方法, 日々, 明日, 明確, 明示, 時代, 時間, 最大, 最新, 最適, 有効, 未知数, 本格, 格段, 格納, 構築, 様々, 比率, 民主, 活用, 活発, 消費, 混合, 済み, 温度, 準備, 無効, 無料, 特定, 特権, 現実, 理由, 環境, 生成, 発生, 登場, 的確, 相性, 短時間, 確認, 秘訣, 移動, 程度, 管理, 節約, 精度, 終了, 結合, 結果, 続行, 能力, 自体, 自分, 自動的, 蓄積, 表現, 言語, 計算, 記事, 設定, 許可, 調整, 費用, 軽量, 追加, 通常, 適用, 選択, 重み, 重要, 量子, 開始, 開発, 関数, 閾値, 非常, 高速, 高額, 魅力,

思ったことを綴って小銭が毎日入るのは良いけど、小銭止まり.
2025.06.20
おはようございます.思ったことを綴って小銭が毎日入るのは良いけど毎日小銭止まりです.小銭がどれぐらいかといえばお賽銭にいれる小銭が毎日入ってくると思ってください.それが毎日入ってきて?札になる感じですが収入が銀行に毎月振り込まれるわけでもないです.
一年前?は毎月振り込まれる感じでしたが、いまは数ヶ月に一回ぐらいにペースが落ちました.でも収入が毎月コンスタントに数千円入るひともあまりいないようです.ほとんどの人は数百円止まりだそうです.
一年前と今と同じことをしているので広告収入も上がらないだと思います.多少SEO改善はしているのですが、そもそもAI時代にSEOは無意味になりつつある気がしていて自分もSNSに結構、力を入れないといけないなって思っています.
SNSと相性が良いのがいま流行っているものを記事にして発信するときです、これは相性が良いです.自分が作った推し記事をSNSへ投稿できるプラグインからのアクセス数は増えていく一方で検索からのアクセス数は徐々にだけど減少傾向にあります.
これからはSEOよりもSNSへの発信を強固にして行くほうが堅実性があるように思えてなりません.
明日へ続く
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
アクセス, いま, いん, ヶ月, こと, これ, コンスタント, それ, とき, どれ, ひと, フラグ, ベース, ほう, もの, よう, わけ, 一方, 傾向, 収入, 堅実, 小銭, 広告, 強固, 感じ, 投稿, 改善, 明日, 時代, 検索, 毎日, 毎月, 減少, 無意味, 発信, 相性, 自分, 記事, 賽銭, 銀行,

適当なアプリをリリースしました、まだ審査中だけども通過するだろう.
2025.06.18
おはようございます.適当なアプリをリリースしました、まだ審査中だけども通過するだろう「きっと」.広告もない、個人情報の登録もないから申請するだけで通過すると思います.
因みにどんなアプリかといえば数字の桁数を漢字読みに変換して表示するだけのアプリ.これどんな人が使うかと言えばインバウンドで日本に来た海外の人達、いまもWebサービスとして自サイトで稼働しているものです.

日本の価格表記に漢字が混ざっていたりするので、そういう時にサ―ビスを使えば日本円での値段が分かるというものです.それを今回、ReactNative(リアクトネイティブ)でアプリ化したものをリリースしました.
最初は広告を付けようかと思ったのですが、付けると審査がめんどくさい事になりそうなので付けずにリリースしました.
何故、アプリを作ろうと思ったかをもう一度記事にするといま公開アプリが一つも無いのでアプリをリリースしないとグーグルさんがデベロッパーアカウントを解除すると警告を受けたので、適当なアプリを作ってリリースした形になります.
明日へ続く
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
アカウント, アプリ, いま, インバウンド, グーグル, これ, サービス, サイト, サン, そう, それ, デベロッパー, ビズ, もの, リアクトネイティブ, リリース, 一つ, 人達, 今回, 価格, 個人, 値段, 公開, 変換, 審査, 広告, 情報, 数字, 日本, 日本円, 明日, 最初, 海外, 漢字, 申請, 登録, 稼働, 表示, 表記, 解除, 記事, 読み, 警告, 通過, 適当,

映画、フロントラインを観てきました、ネタバレ無しの感想
2025.06.14
おはようございます、映画、フロントラインを観てきました、ネタバレ無しの感想を書いていきます.これは胸熱な物語でした観てよかったです、観たいなって思っている方は是非劇場に足を運んでください熱い思いがお釣りとして返ってきます.
後半あたりぐらいからすすり泣きが聞こえるぐらいの内容.自分も目頭熱くなるところが何度かありました.最近観た映画、国宝とフロントラインを比べることは難しいけど、フロントライン:真実に基づいた物語は万人に評価高い映画だと感じました.
日本的なので海外の人にはどう映るか分からないけど、何も言わずに結果を出している人は良いなって思いました.そしてコロナがおさまった、今、映画としてその物語が語られるところなんかが心打たれる話ですよね.
観てよかったです、ありがとうございました.
明日へ続く
著者名
@taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
あたり, お釣り, こと, これ, コロナ, すすり泣き, ところ, ネタ, バレ, フロント, ライン, 内容, 劇場, 国宝, 後半, 思い, 感想, 日本, 明日, 映画, 是非, 最近, 海外, 無し, 物語, 目頭, 真実, 結果, 自分, 評価,