タグ

ブックマーク / qiita.com (2,925)

  • FastAPI Adminでデータ管理ツールを爆速で立ち上げてみた - Qiita

    Fast APIにもDjango Adminのような管理画面フレームワークないかなと思って探していたら、ちょうど同じような名前で実装されていたので、使ってみました。 tl;dr FastAPI Adminを使えば、ログイン画面つきのデータ管理画面を爆速で立ち上げられます。 機能的には現段階ではシンプルなCRUD操作が可能で、独自のカスタマイズも可能。 今回のサンプルコードはこちら FastAPI Adminとは FastAPI Adminとは、 A fast admin dashboard based on FastAPI and TortoiseORM with tabler ui, inspired by Django admin と公式サイトにあるように、Django adminに影響を受けてFast APIに実装されたDBデータ管理画面用のフレームワークです。 できることを簡単に列

    FastAPI Adminでデータ管理ツールを爆速で立ち上げてみた - Qiita
  • コードレビューするときの観点 - Qiita

    コドレビューの観点 コドレビューの観点をまとめてみました。チェックリスト的なものになりますた。 機能性 コードが設計通りの機能を有するか? データの流れ、取得方法は、設計と一致するか? データのチェックの漏れはないか? データの生成、修正、加工は、設計と矛盾がないか? ループの中で更にSQLなど重い処理を発行するなど、パフォーマンスの懸念はないか? 必要な場合、国際化の対応しているか? コネクションやリソースは適切な方法で閉じられているか? NULLとなる場合や値が取れない場合を考慮しているか? NULLをある程度許容したコードになっているか? 読みやすさ 名前の付け方は、共通認識の範囲か? スタイルガイドにそっているか? ループ、分岐等の処理記述方法は同じか? コード設計 パラメータ、プロパティなど正しく機能区別されて実装されているか? インスタンス等の上書き、重複など考慮されているか?

    コードレビューするときの観点 - Qiita
  • CTOの視点から見たAzure OpenAI ServiceとOpenAIのChatGPT APIの深堀り比較 - Qiita

    ※ この記事の内容は先日のQiita Nightでお話ししたことと一部重複します。 Qiita NightではLTの制限時間(10分)に収めるため、結構端折りました。 はじめに ChatGPTが登場してから数ヶ月が経ちました。 ChatGPTをはじめとしたGenerative AIは完全に現在のIT業界のトレンドとなっています。 今や多くの企業でChatGPT APIをサービスに組み込んで顧客提供を開始したり、自社の社内システムに組み込んだりと積極的に利用するようになりました。 私もGenerative AIが無くなると業務に支障が出るレベルで利用しています。 そして、2023年5月時点ではChatGPTAPIを利用する方法として、OpenAI社が提供しているAPIを利用する方法とMicrosoft社が提供しているAzure OpenAI ServiceのAPIを利用する方法の2つが

    CTOの視点から見たAzure OpenAI ServiceとOpenAIのChatGPT APIの深堀り比較 - Qiita
  • イラストで理解するDynamoDBのテーブル - Qiita

    はじめに 概要 DynamoDBのテーブルの用語やテーブルの検索方法がまっっったくわからなかったので、イラストをまじえながらいつでも見返せるように書いてみました。 この記事で得られること DynamoDBのテーブルの基礎概念についてイラストで理解できます。 テーブルの操作はaws cliで行なっていますが、もちろんコンソール画面からもできます。 全体の概要を理解したいので、aws cliのコマンドについては軽く読み流してもらって大丈夫です。 用語 DynamoDBのテーブルには色々な用語があります テーブル パーティションキー ソートキー Item(項目) Attribute(属性) index その他もろもろ… 何を言っているのかよく分かりませんね。 そこで、今回は私たちに馴染みのある「学校」をテーマにイラストを使って解説をしていきます。 みなさんは先生になった気持ちでどうすれば生徒たち

    イラストで理解するDynamoDBのテーブル - Qiita
  • AWS Shield AdvancedのTips - Qiita

    仕事AWS Shield Advancedを利用する機会があったので、備忘もかねてTipsをまとめました。 AWS Shieldについて AWSのリソースをDDoSから保護するサービスです。 AWS ShieldにはStandardタイプとAdvancedタイプがあります。 AWS Shield Standardについて 特に有効化する必要はなく、すべてのAWSリソースに標準適用されています。 DDoSの保護対象はL3層とL4層になります。 料金は発生しません。 AWS Shield Advancedについて 初期設定では無効化されていて、有効化するとAWS Shield Standardの機能に加えてL7層の保護が追加されます。 AWS Shield Advancedの保護対象は以下になります。 Application Load Balancer Route 53のホストゾーン Ama

    AWS Shield AdvancedのTips - Qiita
    mapk0y
    mapk0y 2023/06/19
  • KubernetesクラスターからAWSリソースへのアクセスを制御してくれる「IRSA」とは? - Qiita

    「アクセス制御」ってややこしいですよね。 AWSでもIAMが苦手!って方多そうですが、Kubernetesの世界でもアクセス制御を知っておかないとセキュリティ事故に繋がります。 今回はそれらの合わせ技となる、AWS上でKubernetesを使う際の両プラットフォーム間でのアクセス制御の組み合わせについてのお話です。 AWS上でKubernetesを使う際のセキュリティ課題 EKSを使ってKubernetesワークロードをAWS環境上でホストしてるよ!という方は多いんじゃないかと思います。 特にAWSKubernetesを使っていると「PodからAWSリソースにアクセスさせたい」という要件が出てきます。 以下のようなプロダクトを例として想像してみましょう。 この例では同じEKSクラスター上でKubernetes Podを2種類がバックエンドアプリケーションとして稼働しています。 Pod①へ

    KubernetesクラスターからAWSリソースへのアクセスを制御してくれる「IRSA」とは? - Qiita
    mapk0y
    mapk0y 2023/06/18
  • terraform importしてplan差分がない=環境が再現できているといつから錯覚していた? - Qiita

    はじめに 先日、Terraform v1.5.0がリリースされました v1.5の目玉はなんと言っても import ブロックと terraform plan -generate-config-out によるtfファイルの生成ですよね〜。これで既存のリソースもimportし放題だと巷で話題です。 ところで、Terraformの特徴として、「インフラをコード化することで環境が再現できる」などと一般的に謳われています。また、Terraformには「既存リソースをimportする機能」があります。別にそれぞれ単独では間違ってはないのですが、これらを組み合わせて、「既存リソースをimportしてplan差分が出なければ元の環境を再現できる」と言えるのでしょうか? 残念ながら現実にはそうとも言い切れません。なんとなく経験上わかってる人もいるとは思いますが、意外と気づいてない人も多そうな気がしたので、ち

    terraform importしてplan差分がない=環境が再現できているといつから錯覚していた? - Qiita
  • Googleドメイン売却!? 良さげな移行先サービスを比較してみた - Qiita

    2023年6月16日、今朝のIT界隈はこちらのニュースで持ちきりでした。 Googleさんが直々に提供している人気のドメインホスティングサービス、Googleドメインが事業売却となるということです。 かくいう私も自分の個人用ドメインをGoogle Domainsでホストし、個人用メールアドレスや技術検証などに活用しているので引っ越しを検討しなければなりません。色々調べてまとめてみました。 今回の事業売却の影響は? Webニュース等でも紹介されているとおり、以下です。 現行ユーザーが直ちに対応を行う必要はない 2023年後半をめどにSquarespace社へドメインや顧客を移管予定 移管完了から少なくとも1年間は現在の価格を尊重 ただし現Squarespaceのサービス価格相場を比較すると、Googleドメインの倍ぐらいの価格設定になってしまうリスクもありそうです。 他社の主なドメインサービ

    Googleドメイン売却!? 良さげな移行先サービスを比較してみた - Qiita
  • OpenAI Function callingで複雑なタスクを簡単に実現 - Qiita

    Function callingの登場 6/13ごろにOpenAI社から発表された新しいgpt-3.5-turboのインスタンスにFunction callingという機能が追加され話題を呼んでいます。このFunction calling、非常に強力な機能なのですが、仕組みがいまいちピンとこないといった方も多いのではないでしょうか。筆者もその一人で、ドキュメントを3回くらい読んでもしっくり来なかったのですが、実際にFunction callingを実装してみてなるほど、これは凄いな、となったので紹介します。 ここでは、具体的なソースコードを紹介しながら、実際に動作するサンプルを作っていきます。 TL;DR ソースコードだけ見られればいい!という方は以下へ https://github.com/canada/openai-function/blob/master/app.py ソースコードを

    OpenAI Function callingで複雑なタスクを簡単に実現 - Qiita
  • 【ChatGPT】新機能「Function calling」が凄すぎた - Qiita

    tl;tr ChatGPTの新機能「Function calling」はすごい。 今後注目される機能になっていくと思われる。 ChatGPTの新機能「Function calling」について 6/13のアップデートで、ChatGPTに新たな機能「Function calling」が実装 されました。 「Function calling」は、ChatGPTに「呼び出すことができる関数」を教えておく機能で、ChatGPTがこの関数を呼び出せるようになります。 この機能を活用すると、ChatGPTを経由することで、曖昧な指示でも関数が実行できるようになります。 「Function calling」の概要と可能性 概要 ChatGPTに呼び出せる「functions」をパラメーターとして渡します。 この状態で通常通りChatGPTに送信をすると、関数の呼び出しを要求するレスポンスが帰るようになり

    【ChatGPT】新機能「Function calling」が凄すぎた - Qiita
  • Kubernetes で Pod が使用できる Secret を制限する方法 - Qiita

    Pod が使用できる Secret を制限する方法 Kubrenetes では、ServiceAccount リソースに kubernetes.io/enforce-mountable-secrets アノテーションを true で設定することで、その ServiceAccount で実行する Pod が secrets フィールドで指定された同一 Namespace の Secret しか使用できない (マウントできない) ように制限する機能 1 が提供されています。 apiVersion: v1 kind: ServiceAccount metadata: name: test-sa annotations: kubernetes.io/enforce-mountable-secrets: "true" secrets: - name: mountable-secret-1 - nam

    Kubernetes で Pod が使用できる Secret を制限する方法 - Qiita
    mapk0y
    mapk0y 2023/06/16
  • Apple Silicon搭載MacでDirectX 12が動かせるらしいので試します。なぜならApple Silicon搭載MacでDirectX 12が動かせるらしいからです。 - Qiita

    Apple Silicon搭載MacでDirectX 12が動かせるらしいので試します。なぜならApple Silicon搭載MacでDirectX 12が動かせるらしいからです。Mac語で要約してくれてる人 さらっととんでもないニュースが来た! AppleがGame Porting Toolkitを通じてmacOSApple Siliconに#DX12サポートを追加したらしい! Wineに20kのパッチを当ててVMを使わずにmacOS上でAAA Windowsゲームを簡単にプレイできるようにするようだ! ヒュ〜💕 https://t.co/kHqrPIXeRr — ジトメ (@ji10me) June 6, 2023 元ツイ Apple added #DX12 support to macOS and Apple Silicon via its Game Porting Too

    Apple Silicon搭載MacでDirectX 12が動かせるらしいので試します。なぜならApple Silicon搭載MacでDirectX 12が動かせるらしいからです。 - Qiita
    mapk0y
    mapk0y 2023/06/10
  • Platform Engineering と Site Reliability Engineering について - Qiita

    この記事はスタンバイ Advent Calendar 2022の12日目の記事です。 Platform Engineering と Site Reliability Engineering(以下SRE) について考えていきたいと思います。 この記事の目的 この記事では SREという言葉の定義と最近の取り組み事例についての考察 Platform Engineeringという考えの紹介 Platform EngineeringとSRE の相違点、共通点 について書きたいと思います。 これは決して特定の個人や団体の考えを否定するものではなく、ご自身のキャリアや組織を考える際のヒントとして使って頂けたら幸いです。 SREという言葉 まずはSREという言葉について確認してみましょう。 O'Reilly Japan - SRE サイトリライアビリティエンジニアリングによると、 (開発/運用の分断に対し

    Platform Engineering と Site Reliability Engineering について - Qiita
    mapk0y
    mapk0y 2023/06/05
  • Jupyter AIが出た!試した!!すごい!!! - Qiita

    ターミナルにトークン付きのURLが表示されますので、ブラウザでアクセスします。 起動しました。 チャットインターフェイス 左パネルにチャットのボタンが追加されています。 Welcomeメッセージが表示されます。 language modelとembedding modelを選択します。 これで準備完了です。 チャットができます。 おお! ノートブックについて質問できる ただチャットができるだけではありません。ノートブックのセルに対して範囲選択をすると、チャットエリアの下部にInclude selectionとReplace selectionが表示されます。 Include selectionだと選択したコードを含んだ形で質問ができます。 すっげー! (DefaultActor pid=473) (DefaultActor pid=473) (DefaultActor pid=473) >

    Jupyter AIが出た!試した!!すごい!!! - Qiita
  • Terraformでモジュールを使いテンプレート分割する場合のアーキテクチャ - Qiita

    はじめに Terraformとは、「Infrastructure as Code」を行うツールで、例えば、AWSリソースをコードベースで作成できたりします。「Infrastructure as Code」を行うツールは、たくさんありますが、Terraformでは「モジュール」という機能があります。 このモジュールと言う機能は、ソースコードをテンプレート化して、パラメータを開発用と、番用で分けることでソースコードを再利用しながら2環境つくれるような機能です。(ざっくり言うと) ただ、そのモジュールの構成について正解は無くネット上でも色んな構成であふれています。 なので、今回は、以下のAWSのCloudFormationのBlackBeltやGCPの記事を参考に、モジュールを使いテンプレート分割する(作成単位をアプリケーションやログとかの運用で分ける感じ)アーキテクチャでリソースを作成し、以

    Terraformでモジュールを使いテンプレート分割する場合のアーキテクチャ - Qiita
  • GPT-4 で Minecraft を自動プレイする Voyager を動かしてみた - Qiita

    概要 GPT-4 に全自動で Minecraft をプレイさせる論文 "Voyager: An Open-Ended Embodied Agent with Large Language Models" を紹介します。 Voyager は、継続的・段階的に複雑なタスクを学習し続けることができ、マップ開拓や新アイテム獲得の能力で既存手法に勝ると主張されています。 既存手法との違い LLM にツールや外部 API を与えて自律的に計画・行動させるアルゴリズムと言うと、ReAct, Reflexion, Auto-GPT などが特に有名です。 これらと Voyager の一番の差別化部分は、Iterative Prompting Mechanism および Skill Library と呼ばれるコンポーネントです。 Voyager はボットを操作するために Mineflayer という Java

    GPT-4 で Minecraft を自動プレイする Voyager を動かしてみた - Qiita
    mapk0y
    mapk0y 2023/06/03
  • 【早い!安い!うまい!】VSCode+WSL+Dockerで簡単に開発環境構築 - Qiita

    三種の神器 今やWSL,Docker,VSCodeは使えて当たり前という雰囲気になってきたので、初心者のためにすごく適当簡単に導入手順をまとめたよ 卍最強の環境卍を構築するため以下の4ステップで解説するよ WSL2の導入 Dockerの導入 VSCodeの設定 使ってみる 1. WSL2の導入 そもそもWSLって何?という方もいらっしゃると思いますが、Windows内でLinux環境を使うことができるぜということだけ覚えておけばOKです 導入についてはPowerShellで以下コマンドを実行するだけ! インストールしたらPCのスタートメニューからUbuntuを開き、ユーザ名とパスワードを設定しよう (Ubuntuを開くだけでユーザ名とパスワードを作成するための入力が求められます) WSLを真面目に知りたい方はこちら↓ https://learn.microsoft.com/ja-jp/wi

    【早い!安い!うまい!】VSCode+WSL+Dockerで簡単に開発環境構築 - Qiita
  • Python 内包表記の限界: 複雑な処理と実行速度の関係 - Qiita

    初めに 記事は実務上で速度的優位性を得るために内包表記を使うことが合理的かどうか検証したものです。 文中のコードは読者層を広くするために型ヒントを省いています。 更新履歴 詳細 追記 (2023/05/24) 計測環境はPython3.12.0a6です。 修正 (2023/05/24) 記事中のバイトコードがPython3.7.16のものだったのでPython3.12.0a6のものに差し替えました。 修正 (2023/05/27) 「list(generator) 使えよ」とのご指摘があったので 単純な例の内包表記を[i for i in range(ELEMENTS)]からlist(range(ELEMENTS))に修正しました。 ご指摘ありがとうございます。 追記 (2023/05/28) Twitterでの反応に対しての追記を行いました。

    Python 内包表記の限界: 複雑な処理と実行速度の関係 - Qiita
  • 理系大学生は研究でもJupyterNotebook(Anaconda)ではなくVScodeを使おう+Python環境構築 - Qiita

    はじめに 理系大学生諸君は、実験で得たデータの解析やグラフ作成にPythonを使っているでしょうか? 私の所属する研究室では、PythonまたはNgraphでグラフを作ることが推奨されています。 特定のグラフ作成ソフトと比べてPythonでグラフを作るメリットというのはいくつかありますが、各設定項目をテキストデータとして確認ができる(明確に記述されている)ところが一番のメリットだと思います。そんなPythonですが、Anacondaをインストールして、その流れでJupyter Notebookを使って解析する人が多いと思いますが、VScodeを使って解析したほうが良いと考える理由と、実例を上げていこうと思います。 Jupyter Notebook(Anaconda)は開発環境とそのエディタであり、VScodeはエディターであるため、直接的な比較は来できないのですが、やんわりと流してくださ

    理系大学生は研究でもJupyterNotebook(Anaconda)ではなくVScodeを使おう+Python環境構築 - Qiita
  • AWSコスト最適化の勘所のまとめ - Qiita

    0.THE FRUGAL ARCHITECT (倹約的なアーキテクト) 2023年11月下旬に開催された re:Invent 2023 のキーノートにおいて、Amazon CTO のワーナー・ヴォゲルス氏が「THE FRUGAL ARCHITECT (倹約的なアーキテクト)」という考え方をお話されました。 とても刺さる内容となっており、今後私なりの解釈を整理して記事化してみたいと考えています。 1. はじめに 近年、様々な企業や組織でAWSの利用が広まってきましたが、AWS活用をしていく中で適切なコスト管理は欠かせません。 適切なコスト管理ができていないと、予想外の箇所でコストが発生し、それに気づかないまま無駄な費用が 長期間にわたって発生し続ける恐れ があります。そのため現時点でどのくらいの費用がかかっているのかを正確に把握し、それを分析して最適化する必要があります。 2.主要なポイント

    AWSコスト最適化の勘所のまとめ - Qiita
    mapk0y
    mapk0y 2023/05/25