Bing Chatとペアプロできる時代がきた
Bing Chatとペアプロできる時代がきた
世間はChat-GPT4で持ち切りですが、Bing Chatでもいい感じのコードを生成してくれるぞという成功例メモ。 今のBingChatは最大15ターン150回まで利用できるようになった。 個人的には、
- 無料
- APIキー必要なし
- モバイル利用OKは
かなりのメリットだと思っている。
今回は、doctestを使ったときにmodule単位でなく、
doctest.run_docstring_examples()
あたりを使ってクラス単位でテストして、(失敗数, try数)である集計結果を得る方法はないのか聞いてみた。
(なぜかdoctest.run_docstring_examples()
はTestResult
を返り値で返してくれない。)
一応、事前のやり取りで、doctest.DocTestRunner`を使うと良さそうというアタリは付けている。
で、(私が少し手直ししているが)できたコードはこんな感じである。🎉
import doctest def doctest_objAll(obj, verbose = True, optionflags = 0): finder = doctest.DocTestFinder() runner = doctest.DocTestRunner(verbose = verbose, optionflags = optionflags) tests = finder.find(obj) for test in tests: runner.run(test) return runner.summarize()
ちゃんとこのコードは動き、しかも公式ドキュメント(https://docs.python.org/ja/3/library/doctest.html)に そっくり載ってるコードでないところが重要ポイントである。(なぜドキュメントにサンプルコードないねんと言いたいところだが)
このコードはできるまでの流れを、(スマートではないが)以降に残しておく。
- Bing Chatとペアプロできる時代がきた
- 環境・事前準備
- Bing Chat とのやりとり
環境・事前準備
- Windows11 64bit
- Edge バージョン 110.0.1587.69 (公式ビルド) (64 ビット)
- WSL2
- Docker Desktop 4.17.0 (99724)
- jupyter
- python 3.10(生成コードの確認)
Mesonの使い方メモ
Mesonの使い方メモ
Mesonの情報無さすぎるということでメモ。 触ってみた所感としてcmakeより楽なんだろうけど、どのbuitinオプションがどの引数を制御してるかなどがわかりにくい.. (ver0.61なので今後変わりそうですが)
mesonではビルド方法を2種類に分けている
- native build: build machineとhost/target machineが同じ
- cross build: build machineとhost/target machineが別
今回はnative buildを中心にまとめる。
- Mesonの使い方メモ
環境・事前準備
今回はDocker上にMesonをインストールした状況を想定してる。 Mesonはpipからインストールできる。
$ pip3 install meson
- Windows10 64bit
- WSL2
- DockerDesktop 4.5.1 (74721)
- base image: Debian 11
- Meson 0.61.2
- base image: Debian 11
emscriptenでよくみるoption-flagをまとめる
emscriptenでよくみるoption-flagをまとめる
emcc --help
しても出てこないオプション(e.g. clang由来のものとか)もあってよくわからんとなったのでメモ。
- emscriptenでよくみるoption-flagをまとめる
- 環境・事前準備
- 困ったときのコマンド
- emscriptenのコンパイラとリンカ
- コンパイラ用オプションとリンカ用オプション
- コンパイラ用オプション
- リンカ用オプション
- 参考リンク
環境・事前準備
今回はDocker上にemscriptenをインストールした状況を想定してる。
- Windows10 64bit
- WSL2
- DockerDesktop 4.5.1 (74721)
DockerでExited(139)が出たときの対処
DockerでExited(139)が出たときの対処
doker run
したときにコンテナが立ち上がらずExited(139)
で終了してしまうときの対処メモ。
この終了コードはDocker Desktop上でも確認できる。
- DockerでExited(139)が出たときの対処
- 環境・事前準備
- 対処方法
- 原因
- 参考リンク
環境・事前準備
- Windows10 64bit
- WSL2
- DockerDesktop 4.5.1 (74721)
Docker+VSCodeのRust環境を作る
Docker+VSCodeのRust環境を作る
RustがCとPythonの間(C寄り)の中級型言語でCより書きやすく速度はCと大差ないらしいということで、触りたくなったのでWindowsでの環境構築を調べたメモ。
GUIアプリを作るようなケースでなければ以下の方法で問題ないはず。
- .devcontainerを使わない方法(1ファイルのみのコンパイル・実行なら可能)
- .devcontainerを使う方法(ワークスペース・パッケージ単位のビルド、1パッケージのデバッグ、補完やらが可能。基本的にはこっち)
- Docker+VSCodeのRust環境を作る
- 環境・事前準備
- Rustはどんな言語か
- .devcontainerを使わない場合
- .devcontainerを使う場合
- 出来上がるファイル構成
- 動作確認
- Rust workspaceの設定
- デバッグの設定
- ビルド用のタスク設定
- 参考リンク
環境・事前準備
VSCode(+拡張機能RemoteContainer)とDockerDesktopはインストール済みを想定
続きを読むJupyter上にGraphvizの図をSVGで描画する
Jupyter上にGraphvizの図をSVGで描画する
Jupyter上にGraphviz(.dot)の図をSVGで描画することに成功したのでメモとして残す。(※拡張機能としてはまだ作れていない)
Viz.jsのおかげでJavaのインストールすら不要になった..!
dotファイルのコードを書いてあげればこうなる👇
gist上では表示されないがnbviewerを通せば図も表示される。
https://nbviewer.org/gist/Cartman0/5a7cfadc2f367869f2df506577ace525
また、IPythonのカーネル周りの挙動もドキュメントがなく分かりづらいのメモとして残す。
- Jupyter上にGraphvizの図をSVGで描画する
- 試した環境
- how to use
- 動作の仕組み
- Viz.jsとは
- iPythonとJavaScriptの連携
- iPython上でJSを動かす方法
- iPython上のJSからpythonの実行
- 参考リンク
試した環境
DockerDesktopはインストール済みを想定
- Windows10 64bit
- DockerDesktop 4.4
- scipy-notebook Image
- python 3.8.4
- scipy-notebook Image
- DockerDesktop 4.4