daigo

社内SEです。WEB(PHP、Python、JavaScript、Node.js、Go…

daigo

社内SEです。WEB(PHP、Python、JavaScript、Node.js、Go)、Windowsアプリ(C#)、インフラ、GCPなど特に特にこだわりなく興味があるものに手を出しています。

マガジン

  • システム

    開発などのメモ

記事一覧

CLIPモデルで画像特徴点の抽出とElasticsearchで類似画像検索

類似画像検索システムを検討するにあたってCLIP(2021年2月にOpenAIによって公開された,言語と画像のマルチモーダルモデル)を試してみました。 1.Elasticsearchのマッ…

daigo
1か月前
2

Dockerコンテナ内のPythonを定期実行させる

Docker内のPythonをホストのcronで定期実行させる方法 20 * * * * docker exec -i コンテナ名 python main.py 上記を設定しても実行されてない。そのためフルパスで指定…

daigo
2か月前

開発で使っているVSCodeの拡張機能(PHPとNext.js)

基本Japanese Language Pack for Visual Studio Code VS Codeのユーザーインターフェース(UI)やメニュー、ツールチップ、エラーメッセージなどを日本語に翻訳するための…

daigo
3か月前

Tauriでデスクトップアプリを作成

Tauriとは RustのセットアップRustの公式ウェブサイト (https://www.rust-lang.org/) からインストーラーをダウンロードして、インストールする。 Node.jsのインストール…

daigo
3か月前

Dockerの内部IP問題とGPU設定

GPUを積んだPCでdefaultのruntimeをnvidiaに変更nvidia container toolkitのインストール apt-get install -y nvidia-container-toolkit ※やり方が変わっていそうなの…

daigo
5か月前

LinuxのsambaとWindowsのActiveDirectoryの連携

LinuxサーバーのフォルダをWindowsのユーザーごとに管理権限を付与して管理したかったため、Linuxにsambaをインストールし、ActiceDirectoryでドメインのユーザー連携を行…

daigo
6か月前

Airbyte使ってみた

AirbyteとはAirbyteとは、さまざまなデータソースからデータをデータウェアハウスやデータレイク、データベースに統合することができるオープンソースのデータ統合エンジン…

daigo
7か月前
2

pandasからpolarsへの書き換え

CSVの読み込みpandas import pandas as pdfile_path = 'example.csv'encoding = 'utf-8' # 文字コードdelimiter = ',' # デリミタdf = pd.read_csv(file_path, encodi…

daigo
9か月前
1

ChatGPTのプロンプトメモ

クレーム分類クレーム内容をグループ化して、その改善内容を提示させる 以下を読んだら「YES」と言ってください。​#データや情報:​以下は、某スーパーによせられた消費…

daigo
10か月前
2

Electronアプリ開発

ElectronとはElectronは、ChromiumとNode.jsを組み合わせたクロスプラットフォームのフレームワーク。Web技術を使用してデスクトップアプリケーションを開発することができ…

daigo
11か月前

GoogleスプレッドシートをPythonで操作する

Google Cloud ConsoleでAPIの有効化 Google Drive API Google Sheets API 認証情報の追加 「APIとサービス」から「認証情報」→「認証情報を作成」 サービスアカウン…

daigo
1年前
3

Laravel10+AdminLite3

AdminLiteの導入方法 composerでインストール composer require jeroennoten/laravel-adminltephp artisan adminlte:install adminLiteを適用したサンプルテンプレート …

daigo
1年前

プロキシサーバー構築

プロキシサーバーを構築するためOSSのSquidを構築 プロキシサーバ設定プロキシサーバインストール(Squid) apt-get install squid 「Squid」インストール後の起動設定 …

daigo
1年前

KNIMEでのFROM-TOのデータを日単位に変換

KNIMEとは 無料で利用することができるデータ分析ツール(ETL) データの収集、処理、分析、可視化をグラフィカルに行うことができるため、データサイエンティストやビジ…

daigo
1年前
2

Pythonで記事サイトのリーダーモードを再現

クローリングしてきたHTMLファイルに対して、必要とする記事だけを抜き出したいが、フォーマットが統一されていないので何とかしたい。 Firefoxなどリーダーモードにすると…

daigo
1年前
1

Encryptを使用してNginxでhttps接続

https化をしていないと、使えないツールもあるため開発環境もSSL証明書を導入する。 今回の環境は ・Ubuntu 20.04 ・nginx。 Let’s Encryptで証明書を発行し、https接続…

daigo
1年前
CLIPモデルで画像特徴点の抽出とElasticsearchで類似画像検索

CLIPモデルで画像特徴点の抽出とElasticsearchで類似画像検索

類似画像検索システムを検討するにあたってCLIP(2021年2月にOpenAIによって公開された,言語と画像のマルチモーダルモデル)を試してみました。

1.Elasticsearchのマッピング定義import jsonfrom elasticsearch import Elasticsearches = Elasticsearch("http://0.0.0.0:9200")# インデックス名

もっとみる
Dockerコンテナ内のPythonを定期実行させる

Dockerコンテナ内のPythonを定期実行させる

Docker内のPythonをホストのcronで定期実行させる方法

20 * * * * docker exec -i コンテナ名 python main.py

上記を設定しても実行されてない。そのためフルパスで指定してcronを書き換える

※cronのログが無い場合は以下の設定を見直し

正常に実行されたときの書き方例

20 * * * * /usr/bin/docker exec -i

もっとみる
開発で使っているVSCodeの拡張機能(PHPとNext.js)

開発で使っているVSCodeの拡張機能(PHPとNext.js)

基本Japanese Language Pack for Visual Studio Code

VS Codeのユーザーインターフェース(UI)やメニュー、ツールチップ、エラーメッセージなどを日本語に翻訳するための拡張機能

Git Graph

ブランチの視覚化

コミット履歴の表示

マージの表示

ブランチの作成や切り替え

コミットの比較

Git History

コミットログの表示

もっとみる
Tauriでデスクトップアプリを作成

Tauriでデスクトップアプリを作成

Tauriとは

RustのセットアップRustの公式ウェブサイト (https://www.rust-lang.org/) からインストーラーをダウンロードして、インストールする。

Node.jsのインストールNode.jsの公式ウェブサイト (https://nodejs.org/) からインストーラーをダウンロードし、インストールする。

Tauriのインストールyarn add -g t

もっとみる
Dockerの内部IP問題とGPU設定

Dockerの内部IP問題とGPU設定

GPUを積んだPCでdefaultのruntimeをnvidiaに変更nvidia container toolkitのインストール

apt-get install -y nvidia-container-toolkit

※やり方が変わっていそうなので後日確認

/etc/docker/daemon.json

{ "default-runtime": "nvidia", "ru

もっとみる
LinuxのsambaとWindowsのActiveDirectoryの連携

LinuxのsambaとWindowsのActiveDirectoryの連携

LinuxサーバーのフォルダをWindowsのユーザーごとに管理権限を付与して管理したかったため、Linuxにsambaをインストールし、ActiceDirectoryでドメインのユーザー連携を行った時のメモ

name serverの設定

下記のファイルの見直し
(あるクラウドだと勝手に書き換わってしまい原因が分かるまでハマった。。。)
vi /etc/resolv.conf

nameser

もっとみる
Airbyte使ってみた

Airbyte使ってみた

AirbyteとはAirbyteとは、さまざまなデータソースからデータをデータウェアハウスやデータレイク、データベースに統合することができるオープンソースのデータ統合エンジン。AirbyteはELT(Extract, Load, Transform)EとLの部分で、データソースからデータを抽出して、目的の場所にロードした後に、必要に応じて変換処理を行うことができる。

インストール

git cl

もっとみる
pandasからpolarsへの書き換え

pandasからpolarsへの書き換え

CSVの読み込みpandas

import pandas as pdfile_path = 'example.csv'encoding = 'utf-8' # 文字コードdelimiter = ',' # デリミタdf = pd.read_csv(file_path, encoding=encoding, delimiter=delimiter, error_bad_lines=Fals

もっとみる
ChatGPTのプロンプトメモ

ChatGPTのプロンプトメモ

クレーム分類クレーム内容をグループ化して、その改善内容を提示させる

以下を読んだら「YES」と言ってください。​#データや情報:​以下は、某スーパーによせられた消費者からのクレームです。​【クレーム】野菜の値段が高い。魚の鮮度が悪い。肉が硬い。惣菜の種類が少ない。パンがおいしく無い。デザートが美味しい。レジが混んでいる。駐車場が狭い。店員の対応が悪い。店内が汚い。トイレが汚い。空調が効き過ぎてい

もっとみる
Electronアプリ開発

Electronアプリ開発

ElectronとはElectronは、ChromiumとNode.jsを組み合わせたクロスプラットフォームのフレームワーク。Web技術を使用してデスクトップアプリケーションを開発することができる。

nodejsをインストール

バージョンの確認

node -vnpm -v

※npm
Node Package Managerの略で、Node.jsで使用されるパッケージ管理システム。npmでは

もっとみる
GoogleスプレッドシートをPythonで操作する

GoogleスプレッドシートをPythonで操作する

Google Cloud ConsoleでAPIの有効化

Google Drive API

Google Sheets API

認証情報の追加

「APIとサービス」から「認証情報」→「認証情報を作成」

サービスアカウントを選択

ロールは「オーナー」

2.自動作成されたサービスアカウントをメールアドレスをクリック

キータブから「鍵を追加」※Jsonタイプ

Googleスプレッドシー

もっとみる
Laravel10+AdminLite3

Laravel10+AdminLite3

AdminLiteの導入方法

composerでインストール

composer require jeroennoten/laravel-adminltephp artisan adminlte:install

adminLiteを適用したサンプルテンプレート

@extends('adminlte::page')@section('title', 'ページタイトル')@section('co

もっとみる
プロキシサーバー構築

プロキシサーバー構築

プロキシサーバーを構築するためOSSのSquidを構築

プロキシサーバ設定プロキシサーバインストール(Squid)

apt-get install squid

「Squid」インストール後の起動設定

systemctl start squidsystemctl enable squid

プロキシサーバのポート確認

vi /etc/squid/squid.conf

http_port

もっとみる
KNIMEでのFROM-TOのデータを日単位に変換

KNIMEでのFROM-TOのデータを日単位に変換

KNIMEとは

無料で利用することができるデータ分析ツール(ETL)
データの収集、処理、分析、可視化をグラフィカルに行うことができるため、データサイエンティストやビジネスアナリストに広く利用されている。

全体像処理する元データ

前半部分の処理について

まずは日付の文字列を日付型に変換

次にFORMとTOの日付の差分を計算

当日も含むので+1日

打ち上げカラムがあるのでそのままだと単

もっとみる
Pythonで記事サイトのリーダーモードを再現

Pythonで記事サイトのリーダーモードを再現

クローリングしてきたHTMLファイルに対して、必要とする記事だけを抜き出したいが、フォーマットが統一されていないので何とかしたい。
Firefoxなどリーダーモードにすると、広告やヘッダー、フッターなど不要な箇所が除去されるので同じようなことをプログラムでできないか検証

Readability.js のラッパーである readabilipy をインストール

pip install readab

もっとみる
Encryptを使用してNginxでhttps接続

Encryptを使用してNginxでhttps接続

https化をしていないと、使えないツールもあるため開発環境もSSL証明書を導入する。

今回の環境は
・Ubuntu 20.04
・nginx。

Let’s Encryptで証明書を発行し、https接続できるよう構成する。

Certbotのインストール証明書の発行や自動更新を行ってくれる便利なツール

sudo apt install certbot python3-certbot-ngi

もっとみる