LabBase
フォロワー 5人
「研究の力を、人類の力に。」というPurposeを掲げ、理系学生の採用プラットフォーム「LabBase就職」、研究開発者・技術者に特化した転職/採用サービス「LabBase転職」を展開し、これらのサービスのグロースはもちろんのこと、HR領域以外でも第3、第4の新規事業も視野に入れ、事業展開を進めています。

LabBase の技術ブログ

LabbaseにおけるLLMsの活用について

アドベントカレンダー2日目 本記事はLabBase テックカレンダー Advent Calendar 2023 2 日目です。 イントロダクション こんにちは、Labbaseのリサーチエンジニアの松井です。 リサーチエンジニアチームでは新しい技術を自社のプロダクトに反映させるにはどうしたら良いかを検証しています。今回は、大規模言語モデルの適応可能な事例や、Labbaseにおける活用について紹介いた

振る舞いに応じて型を分けることで複雑さに対処する

アドベントカレンダー 1 日目 本記事はLabBase テックカレンダー Advent Calendar 2023 1 日目です。 はじめに 前回の記事ではDomain Modeling Made Functional: Tackle Software Complexity with Domain-Driven Design and F# の読書メモをまとめました。 https://zenn.dev/labbase/articles/b1c513c32fe15e Domain Modeling Made Functional: Tackle Software Complexity

Rust Tokyo2023に刺激されて、社内「Crateを読む会」を開催した話

イントロダクション 先日、プログラミング言語のRustに特化したカンファレンスである、Rust Tokyo2023に参加してきました。 このカンファレンスで得た知識と刺激を元に、社内で「Crateを読む会」を開催することにしたので、そのアイディアと成果を共有します。 開催のきっかけ Rust Tokyo2023では主なトピックとして、「Rustをどのように社内に導入したか」と「Rustの特徴を活

Rust初心者がRust.Tokyo 2023 をオンライン視聴した感想

2023/10/21(土)、Rust.tokyo 2023を自宅からオンライン視聴しました。 https://rust.tokyo/2023 この記事においては、Rust歴1ヶ月の筆者がRust.tokyoにオンライン参加した感想レポートを、筆者がRustを始めた経緯などとも絡めつつ記述します。 TL;DR Rust初心者でもRust.tokyoはとても楽しめたし、勉強になった 組織におけるRustの導入プラクティスとしては、「まずは少人数から」が良さそうだ

Rust.Tokyo 2023参加記

こんにちは。Zennでは初めまして。cordx56です。 今回は、先日開催されたRust.Tokyo 2023の参加記を書きたいと思います。よろしくお願いします。 Rust.Tokyoとは? Rust.Tokyoとは、プログラミング言語であるRustのカンファレンスです(念の為)。そこまで多くの情報は載っていませんが、公式サイトもあります。 なぜ参加したの? 私は今回のRust.Tokyo 2023がRust.Tokyoの初参加でした。

Domain Modeling Made Functionalの読書メモ

はじめに Domain Modeling Made Functional: Tackle Software Complexity with Domain-Driven Design and F# を読んだので、気になったことをまとめます。 私の DDD の知識と経験は趣味プロダクトで素振りしてみた程度、関数型プログラミングは勉強中という感じなので、間違った解釈をしているかもしれませんがご容赦を。 本書は F#で記載されていますが、自分のメモでは TypeScript に翻訳してサンプ

vite-plugin-svelte-svg の ts(2307) エラーを消す

TL;DR vite-plugin-svelte-svg プラグインを使って svg ファイルをコンポーネントとして読み込んだときの ts(2307) エラーを解消するには、src ディレクトリ内に @types/index.d.ts ファイルを作成して、以下の内容を記載する。 src/@types/index.d.ts declare module '*.svg?component' { import Svelte from 'svelte'; export default Svelte.SvelteComponent; } vite-plugin-svelte-s

LabBaseはRust.Tokyo 2023 にシルバースポンサーとして協賛します

株式会社LabBaseは、2023年10月21日に開催されるプログラミング言語「Rust」のコミュニティによるカンファレンス「Rust.Tokyo 2023」に、シルバースポンサーとして協賛します。 開催概要 日時:2023年10月21日(土) 会場:オンライン・オフライン開催 イベントページ:https://rust.tokyo/2023 当社のプラットフォームに密に関わるエンジニアコミュニティの発展に向け、今後も幅広く

パスワードレス MySQL Proxy を作る

やりたいこと 下記の MySQL 版を作りたいです。 https://github.com/mothership/rds-auth-proxy なお、現時点では完全に上記のツールと同等な機能ではありません。 動機 AWS RDS MySQL や Aurora MySQL を利用していると、ローカル PC などの端末からデータベースインスタンスに接続したい場面があると思います。 データベースインスタンスへのネットワーク接続については、Session Manager の Port

Git で push 前にテストやフォーマット済みかをチェックする

TL;DR 次の手順を実行する リポジトリに infra/git-hooks のような名前でディレクトリを作成し、下記の pre-push スクリプトファイルを追加する。 このとき、 chmod +x infra/git-hooks/pre-push のようにして pre-push スクリプトに実行権限を付与しておく。 .gitignore ファイルに .wt-pre-push-test を追加する。 .wt-pre-push-test は pre-push スクリプトが push 前チェックに使用する作業用ディレクトリ

関数型言語”兼”定理証明支援系Leanの環境構築

Leanとは Leanは普通の関数型言語であり、なおかつ定理証明支援系でもある大変パワフルな言語です。つまり原理上実行前にわかる性質は、型に埋め込んだり、頑張って自分で証明したりすることができます。そう考えるとワクワクしてきますね! またコンパイラフロントエンドのAPIを自由にユーザーが使えるので、標準の文法や意味論とまったく同じレベルで自分の拡張

cargo watch で .env ファイルの変更も監視する

TL;DR .env と .trigger を .gitignore に追加して、以下のスクリプトを cargo run の代わりに実行する。 run.sh #!/bin/bash set -e -u -o pipefail # kill all background child processes when exit. trap "exit" INT TERM trap "kill 0" EXIT realpath() { [[ $1 = /* ]] && echo "$1" || echo "$PWD/${1#./}" } SCRIPT_DIR="$

curl でステータスコードとBodyを一緒に返す

curl コマンドで WebAPI を呼び出すときにリクエストの Body だけでなくステータスコード(201, 403 など)も利用したいことがある。そのような時は、 curl コマンド実行時に -w "\n%{response_code}" を付けて、 HTTP リクエストのステータスコードをコマンドの出力に追加する。 参考: https://everything.curl.dev/usingcurl/verbose/writeout これを後で分割することでレスポンスの Body とステータス

Enum での 比較におけるPartialEqとmatchesの違い

RustのEnumで比較をする場合PartialEqを利用していましたが、matches!も比較に使えます。 比較結果が変わることがあったのでこちらで共有します。 enumの定義 最初にシンプルなenumを定義します。 enum Sports { BaseBall, BasketBall, } シンプルな比較 まずはそのまま比較します。 == と matches! 両方で試します。 let b1 = Sports::BaseBall; // こちらはエラーです。 println!("{:?}", b1 == Sports::BaseBall);

Rustで真面目にフロントエンド開発ができるのか考えてみた

幸運なことに、私は最近バックエンドはほぼ全て Rust で開発しています。一方でフロントエンドは React で開発しているのですが、もし同じく Rust で書けたら Rust 信者の私としてはとても嬉しくないか?と日々思っていました。実はこれは夢ではなく、Rust のプログラムを WebAssembly(WASM)にコンパイルすることで Web ブラウザでも JavaScript から呼び出すことが出来ることからア
123