ブックマーク / zenn.dev/ryo_kawamata (5)

  • ChatGPTをコマンドラインから使うためのCLIツールを作る by ChatGPT

    ChatGPT を使用する Python スクリプトの作成 次に、Python スクリプトを作成して、ChatGPT を初期化し、コマンドラインから文を入力して問い合わせるための CLI ツールを作成します。 import openai import os openai.api_key = os.environ["OPENAI_SECRET_KEY"] prompt = input("Enter a prompt: ") completions = openai.Completion.create( engine="text-davinci-002", prompt=prompt, max_tokens=1024, n=1, stop=None, temperature=0.5, ) for choice in completions.choices: print(choice.text)

    ChatGPTをコマンドラインから使うためのCLIツールを作る by ChatGPT
    yarumato
    yarumato 2022/12/04
    “ChatGPT が書いてくれた ChatGPTのCLI ツール(python製)の記事です。以下がその際のやりとり。”
  • The Super Tiny Compiler ではじめるコンパイラ入門

    The Super Tiny Compiler とは? The Super Tiny Compiler は、わずか 200 行の JavaScript で書かれたコンパイラです。 Super Tiny の言葉どおり機能はとても限定されていて、LISP ぽい関数呼び出しを C 言語のような関数呼び出しに変換するだけです。

    The Super Tiny Compiler ではじめるコンパイラ入門
    yarumato
    yarumato 2022/10/05
    “わずか200行のJavaScriptで書かれたコンパイラです。LISPぽい関数呼び出しをC言語ぽい関数呼び出しに変換するだけ。コンパイラ( Tokenize字句解析、 Parse構文解析、Transform 変換、Generate出力)の雰囲気が理解できる”
  • Deno で簡易レンダリングエンジンを作ってみた

    作ったもの Web ブラウザの仕組みを基礎から勉強したいと思い、「Let's build a browser engine!」の記事を参考に Deno で簡易的な HTML レンダリングエンジンを作ってみました。 簡易的という言葉の通り、実用性はないです。 HTMLCSS を入力として受け取り、Canvas にボックスを描画するだけです。 また、描画に対応しているものは、ブロック要素のレイアウトのみで、使える CSS もごくわずか。サイズ・位置指定(width、 height、padding、margin、border-width)と装飾(background-color、border-color)のみ。テキストの描画もできません。 ただ、ひとつひとつの過程を自分で実装していくので、レンダリングエンジンの仕組みを勉強するにはとても良いものでした。 記事で実装するレンダリングエンジン

    Deno で簡易レンダリングエンジンを作ってみた
    yarumato
    yarumato 2022/08/25
    “サンプルコードとは別の言語で再実装する学習方法が思いのほか良かった。内容を理解しないと動かすことが難しいから。 この学習方法を行う上で大切なのはテストを書くこと。実行しないとわからない部分が多い”
  • Firebase + Spreadsheet で Slack Bot を作ったら社内用語辞典の運用が3倍楽しくなった話

    最近作った Slack Bot が好評だったのでまとめてみました! どこの Slack ワークスペースでも導入できるように詳細に設定方法も記載しています。 🛠 作ったもの tell-me-bot(社内では tell-me-paccho)という、社内用語辞典をいい感じに管理してくれる Slack Bot を作りました。 社内ではもともと Spreadsheet で社内用語を管理していたのですが、メンテナンスする人が限られ、あまり積極的には利用されていない状況でした。 そんな時に@しかじろうさんのこちらの記事を発見して、これはおもしろいアイデアだと思い、Firebase + Bolt(TypeScript)にて作ってみました(アイデアをくれた@しかじろうさんに感謝🙏)。元記事の機能を参考に+αの機能も色々実装しています。 構成 Cloud Functions for Firebase で

    Firebase + Spreadsheet で Slack Bot を作ったら社内用語辞典の運用が3倍楽しくなった話
    yarumato
    yarumato 2022/01/25
    “DBとしてFirestoreではなくSpreadsheetを使った理由。エンジニア以外でも誰でも手軽に辞書データを直接追加・編集・削除を出来る(重要!)。Slackのインタフェースで編集・削除の機能を実装するのが面倒”
  • 開発者のためのスライド作成ツール Slidev がすごい

    マークダウン形式のスライド作成ツール Slidev を試したら、とても良かったので紹介です。 Slidevとは? Slidev はVue UseやType Challengesの作者であり、Vue.js のコアチームメンバーでもあるAnthony Fuが開発しているマークダウン形式でのスライド作成ツールです。 Vite、Vue3、WindiCSSを用いて開発されています。 まだ Public Beta ですが、リリースからわずか数日で 7,000 を超える GitHub スターを集めています。 実際にどのようなスライドが作成可能なのかは、Slidev のデモや、作者の Anthony が Slidev を用いてプレゼンした VueDay2021 の資料が分かりやすいです。 デモ動画 VueDay2021 でのプレゼン 使い方 任意のディレクトリで以下コマンドを実行するだけで環境は整います。

    開発者のためのスライド作成ツール Slidev がすごい
    yarumato
    yarumato 2021/05/12
    “マークダウン記法を使えば、シンタックスハイライトが効く。 さらにブラウザベースのコードエディタをサポートしているため、スライド画面を移しながらライブコーディング的にコードを編集も可能”
  • 1