自分用ChatGPTのようなものを作りたいと思いました。UIの実装は、Streamlitを使うと楽できそうです。 できたもの というでわけで、こんな感じのものがサクッと作れました(新しい発言が上に表示される仕様です)。UIには前述の通りStreamlitを、ロジック部分にはLangChainを使っています。 こんなことができます。 研究アシスタントとして振る舞う チャット風のUIで会話できる 会話履歴に基づいて会話できる 今のところは、ChatGPTのWeb版を使うのとそんなに変わりません。ソースコードは、以下のリポジトリに置いてあります。 開発する上でハマったこと チャットのロジック部分に関しては、「LangChain の チャットモデル (ChatGPTの新しい抽象化) を試す|npaka」などを参考にすれば、簡単に実装できるでしょう。 会話履歴基づいて発言できるようにするためには、L
こんにちは 堤です。 3月1日にChatGPTのAPIが公開されました。 openai.com APIが公開されたことでChatGPTを活用したアプリが色々登場して盛り上がっていますね! 今回はPythonのみで簡単にWebアプリを作成できるStreamlitとChatGPT APIを組み合わせて簡単にAIアプリを作成する方法をご紹介します。 Streamlitについて StreamlitはフロントもバックエンドもPythonのみの記述でWebアプリケーションを作成できるフレームワークです。 streamlit.io Webアプリ作りたいけどフロントの知識が全くない。。という人でもUIが簡単に作成できるのでとても便利です。 データ可視化や機械学習モデルの共有がとても簡単にできるのでデータサイエンスの領域でよく使われています。 作成するアプリ 今回はこのChatGPT APIとStreaml
はじめに Pythonは動的型付けのプログラミング言語です。そのため、実行時に型に関するチェックが実行されません。その結果、“動的型付けであるがゆえに問題がない処理”が存在してしまいます。それらは、ある時点で外部から観測される振る舞いに問題がなかったとしても、リリースを重ねていくうちにに不具合として顕在化する可能性があります。 そのような処理に対して、mypyによりコードにおけるリファクタリングをすると良い箇所を特定できます。mypyはPythonで静的型チェックを実行するツールです。 例えば、以下に該当するような、コードの検知が可能です。 型ヒントの不足 型の矛盾 つまり、mypyの出力に基づくリファクタリングでは以下の効果が期待されます。 処理の内容を型ヒントで補足することによる可読性の向上(潜在的な不具合を埋め込む可能性の解消) 型が矛盾している処理を修正することによる堅牢性の向上(
Photo by Alice Donovan Rouse on UnsplashDynamic typing, which means that the type of a variable is determined only during runtime, makes Python flexible and convenient. However, every coin has two sides. Messy typing of variables is usually the root of hidden bugs. Robust programs should be type-safe. Therefore, Python provides the typing hint feature since version 3.5. This feature is a good trad
OSINTとは OSINT (Open-Source Intelligence) とは、インターネット上に公にアクセス可能な情報を収集・分析することを指します。サイバーセキュリティの分野では特に重要な役割を担い、情報収集から脅威の評価・対策までの業務をサポートします。特に、LinuxコマンドやGoogle検索を使った情報収集はOSINTにおいて重要な手法のひとつです。 LangChainとは langchainは、LLMと外部リソース(データソースや言語処理系等)を組み合わせたアプリケーションの開発支援を目的としてHarrison Chaseさんが開発したPythonライブラリです。langchainを使うことで、OSINTにおいて人間が手作業で行うタスクを自動化することができます。 例えば、サイバー脅威に関連する情報を収集したい場合、langchainを使って自然言語からLinuxコマン
言語&開発基礎編 PythonやSQLなどの言語と開発環境に関連することをまとめました。 機械学習に関する教材はこの次のセクションにまとめてあります。 学習環境 インストール及び使い方チュートリアルのサイトと、ある程度使い慣れた後に役立つtips集を各エディタでまとめました。 Google Colaboratory Python初学者にとって最もわかりやすいPython実行環境です。プログラミングは初めて!という方はまずこのGoogle Colaboratory(通称: Colab)から始めてみて、使い方がある程度わかったら、そのまま次のセクションのPython編に移りましょう。 Pythonプログラミング入門 難易度: ★☆☆ 東京大学の公開しているPython講座ですが、冒頭でColabの使い方を解説しています。使ったことのない方はこちらから! Google Colabの知っておくべき
こんにちは。社内データサイエンスチームYAMALEXの@Ssk1029Takashiです。 最近はChatGPTが出て注目を浴びたり、BingにもChatGPTのように質問応答してくれるAIが搭載されるなど、OpenAIのGPTモデルが世の中を騒がせています。 私もChatGPT使ってみましたが、受け答え自体は人が書いていた文章と遜色なく、文章の自動生成もここまで来たか。。という感じでした。 そんなChatGPTの特徴の一つとして、回答には時々嘘が含まれるというものがあります。 ChatGPT自体は知識を持っているわけではないので、学習データにないことなどはそれっぽいけどでたらめな回答を返してしまいます。 ただし、最近追加されたBingのGPTでは、ChatGPTよりもはるかに正確な回答が返ってくるように感じます。 画面を見ると回答の根拠となっている詳細情報が出ています。 ここから推測する
Please read the initial JARM blog post for more information. JARM is an active Transport Layer Security (TLS) server fingerprinting tool. JARM fingerprints can be used to: Quickly verify that all servers in a group have the same TLS configuration. Group disparate servers on the internet by configuration, identifying that a server may belong to Google vs. Salesforce vs. Apple, for example. Identify
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く