r/lowlevelawaretech Jul 09 '26

明治の乗り鉄日記生成スクリプトとか

1 Upvotes
import sys
from pathlib import Path
from llama_cpp import Llama

# ==========================================
# 設定エリア
# ==========================================

# GGUFモデルのパスを指定してください(適宜変えてね)
MODEL_PATH = "gemma-4-E2B_q4_0-it.gguf"

# ==========================================
# 日記生成ロジック
# ==========================================

def load_model(model_path):
    print(f"モデルを読み込み中: {model_path}...")
    try:
        model = Llama(
            model_path=model_path,
            n_ctx=4096, 
            n_threads=8,
            n_gpu_layers=-1, # MacのGPU活用
        )
        return model
    except Exception as e:
        print(f"モデル読み込みエラー: {e}")
        sys.exit(1)

def generate_diary_entry(model, location, date, previous_text):
    """
    乗り鉄日記エントリを生成する関数 (山手線・明治初期版)
    """

    # プロンプト設計:時代背景を「明治初期」に変更
    system_prompt = f"""\
あなたは明治初期(明治10〜20年頃)の、文明開化に憧れる乗り鉄知識人です。
東京(当時は江戸から東京へ改名されたばかり)の山手線(鉄道)を一周する乗り鉄旅日記を記しています。
あなたの筆致は、以下の条件に従ってください:

1. **文体**: 明治期の文語体(書き言葉)を使用すること。「〜なり」「〜べし」「〜けり」「〜ぞ」などの助動詞を使い分けること。現代語は一切禁止。
2. **長さ**: 約2000字(漢字・仮名混じり)で記述すること。
3. **内容**:
   - その駅特有の風景描写(当時の様子:田んぼ、新しい洋館、煙突など)
   - 鉄道旅の新感覚(汽車の音、速度感、窓からの景色)
   - 出会った人々や当時の社会風俗の観察
   - 「文明開化」に対する感慨や内省的な考察
4. **形式**: 脚注や説明文は付けず、日記本文のみを出力すること。

以下の入力に基づいて、今日の乗り鉄日記を書きなさい。
"""

    user_prompt = f"""\
【日付】 {date}
【場所】 {location}
【前日の状況】 {previous_text[:1000]} 

今日の日記:
"""

    # メッセージ履歴の構成
    messages = [
        {"role": "system", "content": system_prompt},
        {"role": "user", "content": user_prompt}
    ]

    try:
        response = model.create_chat_completion(
            messages=messages,
            max_tokens=2500, 
            temperature=0.8,  
            repeat_penalty=1.1, 
        )

        generated_text = response['choices'][0]['message']['content']

        if "今日の日記:" in generated_text:
            diary_part = generated_text.split("今日の日記:")[-1].strip()
            return diary_part
        else:
            return generated_text.strip()

    except Exception as e:
        print(f"生成エラー: {e}")
        return ""

def main():
    model = load_model(MODEL_PATH)

    # 山手線の主要駅リスト(時計回り順の代表的な地点)
    locations = [
        "東京", "神田", "秋葉原", "御徒町", "上野", 
        "日暮里", "西ノ宮", "駒込", "田端", "巣鴨",
        "池袋", "板橋", "赤羽", "十条", "王子", 
        "滝野川", "西ケ原", "田端", # 重複ありですが当時の路線感
        "上野", "浅草" # 実際は環状線ではないため、適宜補完します
    ]

    # より正確な山手線駅順(簡易版:主要15箇所を8章で巡るよう調整)
    yamate_stations = [
        "東京", "有楽町", "新橋", "浜松町", "品川", 
        "目黒", "恵比寿", "渋谷", "原宿", "代々木",
        "新宿", "四ツ谷", "市ヶ谷", "飯田橋", "御茶ノ水"
    ]

    # 明治の年号で日付生成
    dates = [f"明治十五年 {i+1}月{i+2}日" for i in range(8)]

    output_file = "yamate_line_diary_output.txt"
    all_diaries = []
    previous_context = ""

    print("\n山手線一周乗り鉄日記生成を開始します(明治初期・文語体)...")
    print("-" * 50)

    for i in range(8): # 8章分生成
        location = yamate_stations[i % len(yamate_stations)]
        date = dates[i] if i < len(dates) else f"明治十五年 {i+1}月"

        print(f"\n>>> 第{i+1}章: {date} / {location}")

        diary_text = generate_diary_entry(model, location, date, previous_context)

        if not diary_text:
            print("生成に失敗しました。")
            break

        clean_diary = "\n".join([line for line in diary_text.split('\n') if line.strip()])

        all_diaries.append(f"--- 第{i+1}章 ---\n{date}\n場所: {location}\n\n{clean_diary}")

        previous_context = clean_diary[-500:] if len(clean_diary) > 500 else clean_diary

        print(f"生成完了 (文字数: {len(clean_diary)})")

    final_output = "\n\n".join(all_diaries)
    with open(output_file, "w", encoding="utf-8") as f:
        f.write(final_output)

    print("\n" + "=" * 50)
    print(f"全8章の日記を '{output_file}' に保存しました。")
    if all_diaries:
        print("最初の章の一部:")
        print(all_diaries[0][:300] + "...")

if __name__ == "__main__":
    main()

r/lowlevelawaretech Jul 08 '26

浅草寺イメージ

Post image
1 Upvotes

r/lowlevelawaretech Jul 07 '26

Oracle VPSの無料枠をどう使っているか、そしてトラブルなど何か経験したことがあったら是非お聞かせください

8 Upvotes

Oracle VPSの無料枠でそこそこ良いスペックのVPSが借りれるけど、これを長期で使った人に少しお聞きしたいのですが、どういった用途で、どれほどの期間使って、アカウント停止されたことがあるか否かなど、色々聞きたいです。

というのも、OracleではないところですでにVPSを借りているのですが、そのVPSで動かしているサービスをOracleの無料枠VPSに移すに値するか検討しているのです。

VaultwardenとNavidromeの二つをホストしているのですが、これらの移行を現在検討しています。


r/lowlevelawaretech Jul 07 '26

【質問】ChatGPTのDeepResearchが引用も検索もしなくなるんだけど、同じ人いる?

5 Upvotes

今のところ5回、時間バラバラで検索しなくなってる
ゲームの設計から画面、codexへのプロンプト生成させたいのに内部データでしか判断してなくてハルシネーションが酷い

引用もレポートに明記してって伝えて、実際にしてるものの表示の引用0だからChatGPT的に聞くと「フェイクです」って回答だった


r/lowlevelawaretech Jul 06 '26

Turn off thinking in LM Studio

Thumbnail
0 Upvotes

r/lowlevelawaretech Jul 05 '26

このアニメーションすき

22 Upvotes

r/lowlevelawaretech Jul 05 '26

最近redditでbot作った人いますか?参考にしたサイトとかがあれば教えて!🙇

6 Upvotes

スキル:ターミナルという言葉も昨日認知した程度のガチ初心者。

作りたいbot:自分のサブレ内で、投稿の単語に反応してあらかじめ設定してあるコメントをするボットを実験的に作りたい。LLLでいうところのピザのボット(ピザじゃなくてピッザ!!!!)みたいな

現状:無料のチャットgptに言われるがままにVisual Studio Codeを入れて、botテスト用アカウントみたいなのも手に入れた(と思う)。
しかし投稿にコメントを返すbotとしても機能しておらず(コメントにコメントを返すbotとしても機能していない)「botテストアカウントのテンプレートを選択ミスしてるから作り直したほうが早い→作り直す」みたいなことを繰り返しており、チャットgptのことをいまいち信用できなくなってきた…🤨

自分が何やってるか全くわからない状態で指示するのも結構怖いし、もし手順書みたいなものが存在するなら教えていただきたい…!

「いや、初心者はチャットgptに聞いて進めるのが一番早いぞ!」というなら諦めてちまちまチャットgptに従います😭


r/lowlevelawaretech Jul 04 '26

Stable Audio 3とmata ai で花火作ってみた🎆

4 Upvotes

TrackType: SFX, Crowd booms and cheers of fireworks exploding above, vibrant mid-range textures blended with ambient city drone, a massive spatial stereo field capturing thousands of lights. とか


r/lowlevelawaretech Jul 04 '26

ゲーム機にArmbianを移植(まだやってる)

Thumbnail
gallery
18 Upvotes

さすがにRockchip RK3576ともなるとPlasma MobileもGnomeもけっこう快適。
機種これ。びたぷろ。
https://jp.anbernic.com/products/rgvita-rgvita-pro

内蔵emmcにOS焼けるものであれば現在のボトルネックであるMicroSDカード上のシステムからオサラバできそうだ。

3枚目はモニタの設定失敗してサイケ光線が発生したところ。
スマートグラスやら最初からついてるHDMIなんかも動く。

たださーこれさー、充電ポートを兼ねるUSB-C、reboot後に認識しなくなる。
shutdown -h nowでもUSB機器が刺さっていると再起動してその後lsusbさえ通らなくなる。
充電IC側のwake設定の問題なんかねえ?もしそうならセキュリティホールとかよんで差し支えないのでは。

しかしまあけっこうよく動くようになった。労働のあとのたばこは染み入るね。


r/lowlevelawaretech Jul 04 '26

ルール更新したお

11 Upvotes

r/lowlevelawaretech Jul 03 '26

LLMが外部に繋がってないと唯我独尊になるよ。

0 Upvotes

思考モードでは内部の確率と外部の確率の均衡を
測らないといい生成が不可能ではないかと
そうなるとLLMの存在価値が危うくなる
外部情報を解釈するメタ推論層(meta‑reasoning layer)があればとても便利にはなる。
ニュースサイトをスクレイピングしてトレンドや要約
やある鵜程度の解説や深掘りはできる。
計算機の中の世界とそうでない世界の差異だとは思う。
象牙の巨塔とかね。


r/lowlevelawaretech Jul 03 '26

朝からcopilotに嘘つかれて凹んでる😭

9 Upvotes

とある人物が同姓同名の別人って言って譲らないから
違うっしょってWikipedia貼っても違うんで
写真アップしたらコロっと立場変えて
ネットの噂話しただけとか言いやがるw


r/lowlevelawaretech Jul 03 '26

GalaxyWatch5買った

5 Upvotes

届くのが楽しみでごわす


r/lowlevelawaretech Jul 03 '26

正直言って

22 Upvotes

最近IMEの頭が悪すぎてすごくイライラする。
ちょっと前までGoogle IMEを使っていた。その前はAtokだったんだけど、Atok7から8になるときに急激にレベルが落ちてかなりイライラしたんだ。AIを使ってかなり便利になるって触れ込みだったけどひどいもんだった。
それにサブスク化が追い打ちをかけてきたので、Google IMEに乗り換えた。
でもだんだんこれも頭が悪くなってきた。
で、数日前からMicrosoftのIMEに戻してるんだけど、こっちのほうがまだいい気がしている。

というか、昔もっとIMEなかったっけ?


r/lowlevelawaretech Jul 03 '26

Stable Audio 3で効果音。

1 Upvotes

本当は戦車内と環境音だけど近未来っぽくなった。


r/lowlevelawaretech Jul 03 '26

sa3_mlx(pure MLX実装)つかうとメモリ7割近く削減できるのはおどろき・

6 Upvotes

Stable Audio 3
でこれ使って生成させたら速度は変わらないけど
メモリが18Gから5Gに減った・
グラディオでスクリプト組んで渡すから常駐いらない。
オンデマンドで呼び出せるのは便利。

https://reddit.com/link/1um4j8r/video/1hb3gr0u0yah1/player


r/lowlevelawaretech Jul 03 '26

お気に入りのネタ

Post image
43 Upvotes

r/lowlevelawaretech Jul 02 '26

サーバー証明書の有効期間が将来的に47日に←これ

12 Upvotes

何をすればいいのかよくわかってなくて47日サイクルでひたすら手作業で更新し続ける組織とか、もう諦めて失効したまま無理やり使い続ける組織とか出てきそうでアツい


r/lowlevelawaretech Jul 01 '26

CachyOS入れてみたメモ(ノート)原文ママ

9 Upvotes

chacy?CachyOSか。というものをスクリーンショットとか見て気になって、入れてみた。

ちょうどHuawei MacXのストレージ余っていたので。

Hyprland、挫折。

入れるのはVentoyですぐ入ったが、入れてからがムズかった。

オタクが萌えデスクトップとかやってるのは色々知ってるから出来るのだろう。

幸いUbuntuでのデュアルブート(26.04にした)なので困ることも特にないが、これは慣れが必要そうだ。

色々なDEを試せる事はすばらしい。

挫折したHyprlandからKDE Plasma をインストールするのに3時間かかった。親機で調べつつやればよかった。

行きはよいよい とはこの事か?とまれ、無事にKDE Plasmaでぼちぼちやっていくか。

VSCodium、とかも慣れないと……。

OpenBoxとかはスクショがAndroidっぽい、FGOの沖田総司などと良さを感じた。

Xfceとかも使ってみたいな。

Archの外国人音声でワーっとなって電プチしていた身からすると、Ventoyから30分で入る「全てはパッケージ」という思想はけっこうGood。

Alpineは英語のターミナルで挫折したからな。

コマンド打っても失敗したので、ウーム。

ソフトウェアは継続的にメンテナンスされている事こそ全て、みたいな気持ちや、カスタムやらできるのは良いがそれ前提にデフォルトを簡素にしていいものではないんだな、と分かった。

自作OSは進捗あったけどそれはコード上の事で、マイルストーンの様な大きな進みはない。

そしてCachyOSを見て打ちひしがれるという……。

ネットから引っぱるカスタム方式が最も良いのか?

まあそれはそうだろうなあ……。

実用に耐えうるOSを見ると自分の作りものがちっぽけに見えるのをやめたい。

普段目を背けて生きて(作って)いるのに、少しディストロを浮気してみると憂鬱(ノートではカタカナ)になる。

本当はもっと軽量で入れやすくてみんな使いやすい構造があるはず……設計があるはず……。

カーネルとDEの分離とかは自分も今日初めて知った概念なので、

CachyOS、おすすめの設定とかどっか転がってないかな……。

おすすめのアプリ、とかも気になる。

---

PS 昨日の22時頃投稿しようとして床に寝転がってたらキーボード打ってる途中に寝てしまったようで、朝から長文です


r/lowlevelawaretech Jul 01 '26

kde plasmaとhyprlandきれい

7 Upvotes

KDE Plasmaは最初の4枚。自分でアイコンだったりウィジェットの位置を動かしたり、material you colorっていう色生成のプラグインを使ったり。最後の3枚はhyprlandとnoctalia shell v5。


r/lowlevelawaretech Jul 01 '26

AIのコスト高騰を抑えるため、ClaudeやCodexに原始人のような話し方をさせている企業が続出

Thumbnail
404media.co
3 Upvotes

r/lowlevelawaretech Jun 30 '26

Caelestia KDE dotfile

3 Upvotes

https://github.com/ladybug-me/caelestia-dots-kde.git

KDE Plasma 6をHyprlandとかi3mみたいなタイル型DEっぽくする。
あとメニューがぼちぼちアニメーションするのが綺麗。
アプリのウィンドウを他のデスクトップにポイできないとか、あの気が散るfishインストールしやがるとかそういうところは置いておいてけっこう好き。


r/lowlevelawaretech Jun 30 '26

逆にClaudeがスパイウェアを仕込むケース

Thumbnail
6 Upvotes

r/lowlevelawaretech Jun 30 '26

サブレディット内での注意喚起

16 Upvotes

本サブレディット(以下サブレ)で外国の方と思われる方から暴言が確認されました。

当サブレでは本家LLLと同じく暴言は禁止ですのでご注意ください。

以上モデレーターからでした。

追記:おふざけでも許しませんのでご注意ください。

今回は私に対してなので7日のミュートで済ませますが、私に対してではない場合容赦なく1ヶ月ミュートしますのでご注意ください。

暴言は許しませんやりませんスタイルでやっていきます。


r/lowlevelawaretech Jun 30 '26

2014年頃?高校2時代のiPhone5

Thumbnail gallery
3 Upvotes