前回の投稿では、オープンソースの GenAI ベースのターミナル アプリケーションの開始について説明しました。今週のタスクは、別のユーザーのプロジェクトに新機能を提供することでした。新しい人と共同作業する必要があったため、私と同じようなコード改善機能を備えたアプリを開発したリリーとチームを組みました。ただし、彼女の性格はネズミです。
時間があれば、彼女のプロジェクトのネズミアシスタントをぜひチェックしてください。
彼女のコードは TypeScript で書かれていますが、正直に言うと、私は TypeScript の経験があまりありません。誤って何かを壊さずに新しい機能を追加できるか少し不安でした。面白いことに、Java や C などの他の OOP 言語に比べて、TypeScript は私にとってはるかに難しく感じられます。しかし、これは良い学習の機会だと考えたので、飛び込んでみることにしました。
私たちの目標は、応答とプロンプトの両方のトークンの使用状況を表示する新しいオプション (-t) を追加することでした。そこで、私はまず彼女のリポジトリでイシューを開いて機能の概要を説明し、次にローカルで動作するようにプロジェクトをフォークしました。
アプリは LLM 機能に GROQ API を使用していましたが、幸いなことに、API 応答の「使用状況」フィールドを介してトークンの使用状況情報に簡単にアクセスする方法がありました。
アプリはコマンドライン引数に yargs を使用しているため、別のオプションを追加するのは非常に簡単でした。ユーザーが -t または --token-usage を指定した場合、アプリは AI 応答とともに出力の最後にトークン情報を表示するようにしました。何度かテストして、既存の機能が損なわれないことを確認しました。それが確認されると、コードがフォークにプッシュされ、プル リクエストを作成しました。
プル リクエストを作成してからしばらく経っていたので、すぐにコマンドを Google で検索したところ、VS Code を使用して簡単に実行できる方法があることを発見しました (真剣に言うと、これがなかったらどうなるでしょうか?)。
新機能の簡単な説明を追加し、プル リクエストを送信しました:
数時間前に私のリポジトリで lily のプル リクエストの通知を見たときです。すぐにコードをチェックし、ローカルでテストしたところ、うまくいきました。他のオプションに問題があるかどうかをテストしましたが、何もありませんでした。私は Gemini API を使用していたので、他の人が一般的に使用している Open AI Chat Completion API とは異なりましたが、彼女はなんとか機能させることができました。
提案すべき問題や改善点が見つからなかったので、彼女のプル リクエストを受け入れ、メイン ブランチにマージしました。誰かがあなたのコードに貢献してくれるのはとても楽しかった (そして緊張しました)。なぜなら、何が起こるか、またあなたのルーン コードのせいで問題が起こるかどうかが分からないからです。
しかし、最終的にはすべてがスムーズに進み、大規模なオープンソース プロジェクトがどのように協力し、プル リクエストを通じて非同期に改善できるかを理解することができました。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3