Notionをオンラインデータベース化!Node-REDからのデータ格納法

みなさんNotionを使っていますか?私自身、ブログ、MarkdownGoogle系のドキュメントなど、過去に色々な手段を試してみましたが、最近では共有することを意識して、Notionを使うことが多くなりました。Notionは情報管理ツールであり、ノート、タスク、データベースなどをプラットフォーム上で管理でき、直感的なインターフェースで簡単に操作できます。実際のところはデータベースに様々なビューがあるツールと思っても良さそうです。

www.notion.so

今回は、このNotionをオンラインデータベースとして、Node-REDからの使用してみたいと思います。  

Notionのデータベース化

エンジニアにとって、情報の収集や整理をデータベースを使用・格納することは大きな意味があります。私は主にNotionをつかって気になったWebのリンクをまとめるようにしています。以前はPocket を使用していたのですが、すっかりNotionに乗り換えています。今回の例もNotionでデータベースを作成し、Node-REDから操作していきます。

続きを読む

ローカルLLMをWebUIで手軽に操作!噂のllama3、phi3、Graniteも使える!

最近では、生成系AIも徐々に多様化してきて、ローカルLLMの使用も流行ってきていますね。個人利用であれば、OpenAIChatGPTなどのSaaS型の生成AIでも問題ないのですが、企業活動になるとそう言ってもいられない事象があるのはもっともかもしれません。

今回は、先日まで設定を行っていた作成した中古ゲーミングPCのUbuntu24.04 LTS上にDockerCUDA Toolkit設定済)を使用していますが、Dockerが使用できるようであればCPUのみでも実行可能です(処理スピードの点は注意)。また、WindowsDockerWSLでもほぼ同様に使用できると思います。

参考

uepon.hatenadiary.com

uepon.hatenadiary.com

uepon.hatenadiary.com

ただ、環境構築やCLI上からプロンプトを打ち込むのは結構面倒なので、今回はローカルLLMをWebUIから操作することのできるopen-webuiという環境も使用して一般的なチャットインターフェースを持った生成系AIの形で利用できるようにしてみたいと思います。

ローカルLLMとは?

ローカルLLMクラウドではなく、ローカル環境(オンプレミス)で動作する大規模言語モデルのことを指すようです。

今回はこのローカルLLMを使用する仕組みとしてOllamaを使用してみたいと思います。

ollama.com

Ollamaとは…

Ollamaは、オープンソースの大規模言語モデル(LLM)をローカルで簡単に実行できるツールです。LLama3やLLava、vicuna、Phiなどのオープンに公開されているモデルを手元のPCやサーバーで動かすことができます。

このような形でLLM部分のみを変更することで、1システムで切り替えて使用できるというのがOllamaのメリットだと思います。更に今回はDockerのコンテナを使用することで更に手軽に使用できるようにしてみたいと思います。

続きを読む

APIキーを安全に扱う!Google Colabでアクセスキーをセキュアに使用する方法

Google Colaboratory(以下Colab)でAPIにアクセスするコードを書こうかなと思ってみたのですが、一般的なコード例では環境変数APIキーを設定して、環境変数の読み出しによって取得するような書き方をしますが、Colabの場合だとソース(ノートブック)にあらわれてくるのでどうすればいいのかなと悩んだので、ちょっと調べてみました。

Colabでも環境変数は使用できる…けど…。

Colabの環境でも環境変数を使用することは可能です。

import os

# 環境変数の設定
os.environ['MY_VARIABLE'] = 'my_value'

# 環境変数の取得
my_var = os.environ.get('MY_VARIABLE')
print(my_var)  # 出力: my_value

os.environを使用すれば確かに使うことができます。ただ、これでは値が丸見えになってしまい、そのままノートブックに埋め込むのと全く変わらないですよね。これはできれば避けたいなあと。

続きを読む

WSLで構築するJava開発環境:EclipseとTomcatのインストール方法

最近、Javaを触る必要がでてきたのですが、手持ちの環境にインストールするのはちょっと抵抗感があってできればコンテナや仮想化で封じ込めたいなあと考えました。JavaTomcatを使用するだけならそんなに問題はないのですが、Eclipseも必要といわれてしまい。GUIの表示も必要となるとけっこう大変だなと感じます。

しかし、Dockerの場合にはXGUIアプリを表示するには設定追加をしないといけないのですが、WindowsWSL環境(Windows Subsystem for Linux)ではバージョンアップを重ねることでXGUIアプリを実行してWindows上に表示することができるようになりました。また、以前は問題であったsystemdのPIDが1でないということでsystemctlを動かせず、サービス化されたアプリを動作できなかったのですが、こちらも解決できています。

このようにWindows上のWSLを使用することで比較的にXGUIアプリやサービス化されたアプリもしようすることができるようになりました。

今回はWSLを使用して、Ubuntu24.04LTSディストリビューション上にJavaTomcatEclipseをインストールしてみたいと思います。前提となりますが、WindowsでWSLが使用する設定を行ってください。また、使用するバージョンは以下の通りです。古いバージョンでは使用できない機能がありますので、できるだけ最新のバージョンをお使いください。

続きを読む

効率爆上げ!WSLで簡単にOSイメージを複製する方法

追記(2024.09.11):exportしたイメージをimportするとユーザがrootになってしまうという仕様の対応方法を追記

WSL(Windows Subsystem for Linux)用の作業イメージを作ってガシガシテストしたいなと思ったことはないですか?

自分は普段はDockerを使用している事が多いのですが、Xっぽいアプリのある作業になると現状ではWSL版のUbuntuイメージのほうが作業しやすかったりします。(例えばEclipseのインストールが必要だったり🥲)ただ、WSLでは同じOSのイメージのインストールではできないようで、といっても古いバージョンを改めてつくるというのも変な感じです。そこで、現状あるイメージのコピーを作成する方法を自分の為にまとめておきます。

  • WSLのOSイメージの複製方法
  • 初期状態の確認
  • wsl --exportを使用してOSイメージを出力
  • wsl --importを使用して、先程作成したOSイメージを取り込む
  • wsl --distributionを使用して作成したOSイメージを起動する
    • 追記(2024.09.11)
  • (作業イメージが不要になったら)wsl --unregisterでOSイメージごと削除する
  • おわりに

WSLのOSイメージの複製方法

今回はインストール済のWSLのOSをコピーする方法になります。サンプルに使用するのはWSL版Ubuntu24.04 LTSです。

作業手順は以下になります。

  1. wsl --exportを使用してOSイメージを出力(tarファイルの作成)
  2. wsl --importを使用して、先程作成したOSイメージを取り込む
  3. wsl --distributionを使用して作成したOSイメージを起動する
  4. (作業イメージが不要になったら)wsl --unregisterでOSイメージごと削除する

という順に作業を行います。

続きを読む
/* -----codeの行番号----- */