Loguru プリントのようにシンプル、ログのように柔軟

Loguru Simple as printing, flexible as logs.

データサイエンスプロジェクトのためのシンプルなログ記録ソリューション

Image by Author

元記事: https://mathdatasimplified.com、2023年7月17日に公開

データサイエンスプロジェクトでログを使用する理由

データサイエンティストは、コードをデバッグするためにしばしばprint関数を使用します。しかし、print文の数が増えるにつれて、出力がどこから来たのかを特定することが難しくなります。行番号や関数名がないためです。

def encode_data(data: list):    print("データをエンコードする")    data_map = {'a': 1, 'b': 2, 'c': 3}    print(f"データマップ: {data_map}")    return [data_map[num] for num in data]def add_one(data: list):    print("1を加える")    return [num + 1 for num in data]def process_data(data: list):    print("データを処理する")    data = encode_data(data)    print(f"エンコードされたデータ: {data}")    data = add_one(data)    print(f"1を加えた結果: {data}")process_data(['a', 'a', 'c'])

出力:

データを処理するデータをエンコードするデータマップ: {'a': 1, 'b': 2, 'c': 3}エンコードされたデータ: [1, 1, 3]1を加える1を加えた結果: [2, 2, 4]

コードを本番環境に展開する際、デバッグ用の行を手動で削除することは手間がかかり、エラーの原因となる可能性があります。

def encode_data(data: list):    print("データをエンコードする")    data_map = {'a': 1, 'b': 2, 'c': 3}    return [data_map[num] for num in data]def add_one(data: list):    print("1を加える")    return [num + 1 for num in data]def process_data(data: list):    print("データを処理する")    data = encode_data(data)    data = add_one(data)process_data(['a', 'a', 'c'])

ログ記録は、この問題に対する完璧な解決策を提供します。データサイエンティストは、出力のために異なるレベル(デバッグ、情報、警告、エラー)を指定することができます。

def encode_data(data: list):    logger.info("データをエンコードする")    data_map = {'a': 1, 'b': 2, 'c': 3}    logger.debug(f"データマップ: {data_map}")    return [data_map[num] for num in data]def add_one(data: list):    logger.info("1を加える")    return [num + 1 for num in data]def process_data(data: list):    logger.info("データを処理する")    data = encode_data(data)    logger.debug(f"エンコードされたデータ: {data}")    data = add_one(data)…

We will continue to update VoAGI; if you have any questions or suggestions, please contact us!

Share:

Was this article helpful?

93 out of 132 found this helpful

Discover more

AIニュース

OpenAIのCEOであるSam Altman氏:AIの力が証明されるにつれて、仕事に関するリスクが生じる

OpenAIのCEOであるSam Altmanは、特に彼の作品であるChatGPTに関するAIの潜在的な危険性について公言してきました。最近のイ...

人工知能

「マーシャンの共同創設者であるイータン・ギンスバーグについてのインタビューシリーズ」

エタン・ギンズバーグは、マーシャンの共同創業者であり、すべてのプロンプトを最適なLLMに動的にルーティングするプラットフ...

人工知能

アーティスの創設者兼CEO、ウィリアム・ウーによるインタビューシリーズ

ウィリアム・ウーは、Artisseの創設者兼CEOであり、ユーザーの好みに基づいて写真を精密に変更する技術を提供していますそれ...

人工知能

「Zenの共同創設者兼CTO、イオン・アレクサンドル・セカラ氏によるインタビューシリーズ」

創業者兼CTOであるIon-Alexandru Secaraは、Zen(PostureHealth Inc.)の開発を牽引しており、画期的な姿勢矯正ソフトウェア...

人工知能

「コマンドバーの創設者兼CEO、ジェームズ・エバンスによるインタビューシリーズ」

ジェームズ・エバンズは、CommandBarの創設者兼CEOであり、製品、マーケティング、顧客チームを支援するために設計されたAIパ...

人工知能

「ナレ・ヴァンダニャン、Ntropyの共同創設者兼CEO- インタビューシリーズ」

Ntropyの共同創設者兼CEOであるナレ・ヴァンダニアンは、開発者が100ミリ秒未満で超人的な精度で金融取引を解析することを可...