Claude 3.5 Sonnet for agentic coding
Summary
TLDRソフトウェアエンジニアがコードのテストと修正に比べて、コードの書込みの方がはるかに短時間で済むと感じています。最新のモデル「Claude 3.5 Sonnet」は、テストの作成やコードの自動修正を手助けします。このデモでは、Claudeが不完全な実装から完全に機能する実装に、最小限の入力でユニットテストを含む一連のプロセスを示します。ウェブサイトのユーザーが同じ寸法の写真を持つために使用される、画像を円にリサイズ・トリミングする関数にバグがあります。Claudeは、テストケースを作成し、バグを見つけて修正し、テストが成功するまで繰り返し実行します。最終的に、修正された関数が円状の背景なしの画像を生成することがわかります。
Takeaways
- 👨💻 ソフトウェアエンジニアは、コードを書くよりもテストを書いたりコードを修正するのに時間がかかることがある。
- 🤖 Claude 3.5 Sonnetは、テストを書いたりコードを自動的に修正するのに役立つ新しいモデルです。
- 🛠️ Claudeは、不完全な実装から完全に機能する実装に、最小限の入力でユニットテストを含むプロセスを支援します。
- 📷 動画では、画像を円形にリサイズ・トリミングする機能のバグをデモンストレーションしています。
- 🐛 現行の機能では、トリミングされた画像が正方形で背景が白いままになっているという問題があります。
- 🔍 Claudeは、ファイルのパスと機能に関する情報をもとに、バグを特定し、テストケースを作成します。
- 📝 Claudeは、テストスイートを自動生成し、指定されたファイルに書き込みます。
- 🚫 テストは、バグのせいで失敗しますが、Claudeはそれを修正します。
- 🛠️ Claudeは、テストを再実行し、修正されたコードがテストに合格するように調整します。
- 🎨 修正後のコードを実行すると、画像は白い背景ではなく、円形にトリミングされます。
- 🙏 Claudeの助けにより、画像のトリミング機能が正常に動作することが確認できます。
Q & A
ソフトウェアエンジニアが直面する問題は何ですか?
-ソフトウェアエンジニアは、コードを書くよりも、テストを書いたりコードを修正するのに時間がかかることがあります。
Claude 3.5 Sonnetは何ですか?
-Claude 3.5 Sonnetは、テストを書いたりコードを自動的に修正するのに役立つ新しいモデルです。
Claudeはどのようにして不完全な実装から完全に機能する実装に到達するのですか?
-Claudeは最小限の入力でユニットテストを含む完全な機能を備えた実装に到達させることができ、期待される動作に対してテストを書いたり、エラーを見つけて修正します。
デモで使用された画像のサイズ変更とトリミングの目的は何ですか?
-画像を円形にサイズ変更しトリミングすることで、ウェブサイト上でユーザーのプロフィール写真が同じ寸法になるようにすることが目的です。
Claudeが修正する前に画像にあった問題は何でしたか?
-画像はまだ正方形で、白い背景を持っていたという問題がありました。
Claudeはどのようにしてファイルを編集、コマンドを実行、コードを実行することができるようになったのですか?
-Claudeは、ファイルを編集したり、コマンドやコードを実行するためのツールが与えられており、インターネットアクセスがない安全なサンドボックス環境で動作します。
Claudeが最初に行ったことは何ですか?
-Claudeは最初に、現在の実装を理解し、潜在的な問題を特定するために私が書いた関数を含むファイルを開きました。
Claudeはどのようにテストスイートを作成しましたか?
-Claudeは、私が要求したファイルにテストスイートを作成し、それを記述しました。
テストが失敗した理由は何ですか?
-テストは、画像がまだ正方形で白い背景を持っているため、予想通りに失敗しました。
Claudeが修正した結果はどうでしたか?
-Claudeが修正した後、テストはパスし、画像は白い背景を持っていなくなりました。
Claudeのデモンストレーションの目的は何ですか?
-Claudeのデモンストレーションの目的は、最小限の入力で不完全な実装から完全に機能する実装に到達し、ユニットテストを作成して実行するプロセスを示すことです。
Outlines
👨💻 自動化テストとコード修正のデモンストレーション
ソフトウェアエンジニアとして、コードを書くよりテストを書いたりコードを修正するのに時間がかかることがあります。新しいモデルのClaude 3.5 Sonnetは、テストを書いたりコードを自動的に修正するのに役立ちます。このデモでは、不完全な実装から完全に機能する実装に至るプロセスを紹介し、私が最小限の入力でユニットテストを含むClaudeの働きを示します。私はウェブサイト上でユーザーのプロフィール写真が同じサイズになるように、画像を円形にリサイズしてトリミングする機能を書きましたが、この機能にはバグがあり、トリミング後の画像が四角で白い背景が残っています。Claudeが期待される動作に対してテストを書く、エラーを見つけて修正できるかを確認してみましょう。このデモでは、Claudeにファイルを編集したり、コマンドやコードを安全なサンドボックス環境で実行するためのツールを与え、インターネットアクセスはありません。私はClaudeにバグの状況、機能が書かれたファイルのパス、および私が望む動作についての指示を伝えます。Claudeはまず、現在の実装を理解し、潜在的な問題を特定するために私が書いたファイルを開きます。次に、Claudeはテストスイートを書いて、私が要求したファイルをに入れます。それからClaudeはそれらのテストを実行します。テストがバグのために失敗したことが予想通りです。それでは、Claudeがバグを修正するところを見てみましょう。Claudeは機能ファイルを編集してバグを修正し、その後テストを再実行します。そしてテストはパスしました。これで、機能を再実行すると、画像には白い背景がなくなっています。
Mindmap
Keywords
💡ソフトウェアエンジニア
💡テスト
💡コード修正
💡モデル
💡画像のリサイズとトリミング
💡バグ
💡テストスイート
💡サンドボックス環境
💡ファイル編集
💡ユニットテスト
💡プロフィール写真
Highlights
软件工程师发现编写测试和修复代码通常比编写代码本身花费更多时间。
新模型Claude 3.5 Sonnet能够自主编写测试并修复代码。
展示Claude如何将不完整的实现转变为完全功能的实现,包括单元测试,仅需最少的输入。
作者编写了一个用于将图片调整大小并裁剪成圆形的函数,用于统一网站用户头像的尺寸。
该函数存在bug,裁剪后的图片仍然是正方形,并且背景为白色。
Claude将为预期行为编写测试,找出错误并修复。
演示中,Claude被赋予了编辑文件、运行命令和代码的工具,在一个没有互联网访问的安全沙盒环境中。
作者告诉Claude关于bug的详细信息,包括文件路径和期望的操作。
Claude首先打开文件,理解当前实现并识别潜在问题。
然后Claude为我们编写测试套件,并将其放入指定文件。
Claude将运行这些测试,并显示测试因bug失败。
接下来Claude将修复bug,并编辑函数文件。
修复后,Claude重新运行测试,测试通过。
重新运行函数后,图片不再有白色背景。
感谢Claude的帮助。
Transcripts
- As a software engineer, I find that writing tests
and fixing code usually takes much longer
than writing the code itself.
Our new model, Claude 3.5 Sonnet, can help write tests
and fix code autonomously.
We'll show you how Claude takes us from an incomplete
implementation to a fully functioning one,
including unit tests with minimal input from me.
I've written a function that resizes
and crops images into circles.
This could be used to make sure that users on a website have
profile photos that are all the same dimensions.
But, there's a bug in this function.
When I run it, the cropped images are still square
and they've got a white background.
So let's see if Claude can write tests
for the expected behavior, find the error and fix it.
For this demo, I've given Claude tools to edit files
and run commands and code in a secure sandbox environment
with no internet access.
I tell Claude about the bug I'm seeing the path to the file
where the function lives, and some instructions for
what I want it to do.
First, Claude chooses to open the file
with the function I've written to understand the current
implementation and identify some potential problems.
Then Claude writes a test suite
for us and puts it into the file
I asked it to.
Now, Claude's going to run those tests.
Let's give it a second.
And just as expected,
the tests are failing due to that bug.
So now Claude's going to go ahead and fix that bug for us.
Here you're going to see Claude edit the
function file to fix the bug.
And now Claude's going to rerun those tests.
And the tests are passing.
So now if we rerun the function...
look, our image no longer has that white background.
Thanks, Claude.
5.0 / 5 (0 votes)