タグ

qiitaに関するa2cNSMRのブックマーク (89)

  • RAG入門: 精度改善のための手法28選 - Qiita

    RAGの精度改善するために何があるかを学びました。基系のNaive RAGを知っている人向けの記事です。 方法が多すぎるので、Youtubeの「RAG From Scratch」を中心に少し整理してみました。LangChainをよく使っているので、LangChain出典が多いです。 全体像 まずは、RAGの全体像。Indexingが同じ流れにあるのが少しわかりにくいのですが、実行タイミングとしてはRAGの前準備としてやっておきます。 画像出典: RAG from scratch: Overview もう少し粒度を細かくした図です。 画像出典: RAG from scratch: Overview 表形式で分類します。Generationだけ少し特殊です。 大分類 中分類 内容

    RAG入門: 精度改善のための手法28選 - Qiita
  • 【TypeScript / JavaScript】this = "これ" ← どれ? 【備忘録】 - Qiita

    この記事で分かること TypeScriptJavaScript)における関数の宣言方法 各宣言方法におけるthisの扱い 初めに 初めまして。新人エンジニアをしているものです。 先日TypeScriptにおける関数宣言について学習する一環で、thisの取り扱いについて学んだので備忘録として書き上げます。 (前提)TypeScriptの関数の宣言方法 まずは複数ある関数の宣言方法を簡単にまとめます。 ①function構文による宣言

    【TypeScript / JavaScript】this = "これ" ← どれ? 【備忘録】 - Qiita
  • ソルト付きハッシュのソルトはどこに保存するのが一般的か - Qiita

    pictBLandとpictSQUAREに対する不正アクセスがあり、パスワードがソルトなしのMD5ハッシュで保存されていたことが話題になっています。 2023年8月16日に外部のフォーラムにpictSQUAREより窃取した情報と主張するデータ販売の取引を持ち掛ける投稿が行われた(中略)パスワードはMD5によるハッシュ化は行われているもののソルト付与は行われていなかったため、単純なパスワードが使用されていた29万4512件は元の文字列が判明していると投稿。(それ以外の26万8172件はまだMD5ハッシュ化されたままと説明。) 不正アクセスによるpictBLand、pictSQUAREの情報流出の可能性についてまとめてみた - piyolog より引用 これに関連してMD5ハッシュやソルトに関するツイート(post)を観察したところ、どうもソルトの理解が間違っている方が多いような気がしました。

    ソルト付きハッシュのソルトはどこに保存するのが一般的か - Qiita
  • Next.jsの本番環境・開発環境をdockerで構築する方法 - Qiita

    動機 開発環境・番環境でdockerを使ってみよう!と思って試したところ何点か詰まったので備忘録としてNext.jsdockerで環境構築する方法を記しておきます。 開発環境 公式のテンプレートをもとに作っていきます。 FROM node:18-alpine WORKDIR /app COPY package.json yarn.lock* ./ RUN if [ -f yarn.lock ]; then yarn --frozen-lockfile; \ else echo "Warning: Lockfile not found. It is recommended to commit lockfiles to version control." && yarn install; \ fi COPY src ./src COPY public ./public COPY next.

    Next.jsの本番環境・開発環境をdockerで構築する方法 - Qiita
  • 【10分で確認】AWSでやりがちなセキュリティ脆弱性を生み出すアンチパターン集(随時追加・更新) - Qiita

    AWSを使うなら見ておきたいチェック項目20選 AWSを実務で触られている方で「セキュリティ対策はばっちしだ💪」と言い切れる人はどれくらいいるでしょうか。特に創業間もないベンチャー企業や内製化直後のエンジニア組織の場合、サービスローンチや追加機能開発がビジネス上の最優先事項になってしまい、セキュリティ対策などの非機能要件のレビュー、設定などは後回しにされがちです。 そこで今回は、"時間がない人"でも注意したいセキュリティ脆弱性を生みやすい設定や設計の凡ミス集をまとめてみました。また、参考になりそうな記事も併せて紹介しています。 ご注意ください 筆者はAWSリソースに関するセキュリティの専門家ではありません。また記事では、最低限の内容にとどめているためより詳細な内容は、公式ドキュメントや以下の資料をご覧ください。 1. IAM ポリシーの広すぎる権限 IAMポリシーに適切でない広い範囲の

    【10分で確認】AWSでやりがちなセキュリティ脆弱性を生み出すアンチパターン集(随時追加・更新) - Qiita
  • 1100万行・32GB超の巨大CSVファイルの基本統計量を4GBメモリマシンで算出する - Qiita

    はじめに この記事は,Kaggle Advent Calendar 2022第6日目の記事になります。 記事では、 32GB超のCSVデータの基統計量を、小規模マシンでも省メモリかつ高速に計算するテクニック について解説します。 Kaggleコンペに限らず、 マシンスペックが低いため、大きなデータセットを満足に処理できず困っている 毎回行うファイル読み込みが遅いので、もっと高速化したい ⚡ といった悩みや課題を抱えている方の参考になれば幸いです。 モチベーション データ分析業務やKaggle等のコンペティションで初めてのデータセットを扱う場合、いきなり機械学習アルゴリズムを行うことはまず無く、最初にデータ観察を行うのが一般的です。 テーブルデータであれば、各カラムの基統計量(最小値、最大値、平均、分散、四分位数)などを計算・可視化し、データクレンジングの要否や特徴量設計の方針などを検

    1100万行・32GB超の巨大CSVファイルの基本統計量を4GBメモリマシンで算出する - Qiita
  • AmazonCognitoでユーザー認証するリバースプロキシサーバーをdocker-composeで構築する - Qiita

    はじめに 社内で構築したWEBアプリを社外のユーザーにも使ってもらう際に、ユーザー認証部分を従来は node.js+express+passport で構築していました。 この方式の場合、ユーザーの追加変更削除を行うにはユーザーを管理するデータベースを直接触るか、または別途ユーザー管理画面を作成する必要があり手間がかかっていました。 今回この認証とユーザー管理部分をAWSのCognitoに移行したので手順を共有します。 なお、このサンプルではローカルPCにWEBアプリおよびリバースプロキシをサーバー構築するものとします。 Amazon Cognitoの設定 ユーザープールの作成 AWSにログインしてサービスの一覧から Cognito をクリックし、次画面で[ユーザープールを作成]ボタンをクリックします。 Cognitoユーザーのサインインオプションは「Eメール」のみ選択します。 セキュリテ

    AmazonCognitoでユーザー認証するリバースプロキシサーバーをdocker-composeで構築する - Qiita
  • Udemyの番人がおすすめする講座 - Qiita

    私はUdmeyに年間50万??ぐらい教材に投資して常に、Udemyに貼り付いて良い講座ができるのを監視しています。その中で、最後まで講座を受講してその講座の感想を書きたいと思います。私は、優良だと思わない講座は即返金処理を行うので、ここに紹介される講座は、とてもわかりやすいものしか基的に載せてありません。この記事は更新されていきますので、ご興味ある方はいいねとストックをお願いします。(よかったやつ証明書とかコピペしてここに貼るの正直まじでめんどくさいので、更新するモチベーションに繋がります)。下記に書いてあるものは全部、優良のものだが、中でも個人的に良いなと思ったやつは、右バーのindexと題名に「👍」をつけておいた。下までスクロールするのがめんどくさい人は「👍」まで。 どうやら、この記事がUdemy Advent Calender 2023に参考記事になったようです。 ちょくちょく

    Udemyの番人がおすすめする講座 - Qiita
  • API設計まとめ - Qiita

    はじめに 自分は2021年に新卒でWeb系の開発会社にフロントエンジニアとして入社し2022年で2年目になります。 実務ではReact×TypeScriptを利用したフロント周りとNode.js(Nest)やRailsを用いたバックエンド(API)の開発をしています。 その中で使っていたAPI設計について改めて学び直したのでまとめて行きます。 この記事の対象者 エンジニア初心者から中級者 APIについて学びを深めたい人 この記事の目標 APIについて学ぶ 我流ではなく正しいAPI設計について学ぶ この記事でやらないこと 具体的にコードを用いたAPI設計の書き方の説明に関しては下記の記事で解説をしています。 APIについて APIとは APIは"Application Programming Interface"の略で、直訳すると「アプリケーションを使プログラミングを使ってつなぐ」という意味

    API設計まとめ - Qiita
  • Windows10 WSL2にLinux居城を爆誕させる - Qiita

    ひどい……こういうことする気でしょう! するとどうなる? 知らんのか PowerShellすら不要になる 完 目次 WSLの中身は単純にUbuntu18.04の環境構築としても使えると思うんですけど (名推理) WSL2とUbuntu18.04LTSを整備する WSL2とUbuntu18.04LTSのインストール (前提) 日語化する パッケージ (管理ツール)を最新化しておく WSL2のPATHからWindowsパスを抜く Vimをクリップボードに対応させる デフォルトのPythonバージョンを3にする 開発用ディレクトリはWSLファイルシステム内にしておく WSL2が使えるメモリ量を制限する IPv6を無効化する Windows側からWSL2内のサーバに localhostで接続できるようにする WSL2内のサーバにlocalhostで接続できない問題が起きたら ALSAを使っている

    Windows10 WSL2にLinux居城を爆誕させる - Qiita
  • エンジニアなら知っておきたい生産性を爆上げするツール8選 - Qiita

    はじめに 今まで自分が使ってきた中で、これは生産性が爆上げする!と思うものを厳選しました 是非最後までご覧ください 1. Biscuit 公式サイト -> Biscuit 複数のアプリをグループ分けしたり、まとめることができるアプリケーション 調べ物が多いエンジニアは、Chromeのタブがカオスになっていることがよくあります 個人的にはあれこれなんでも登録するのではなく、よく使うアプリだけをまとめるのが良いかなと思っています 設定のインポートやエクスポートも簡単なので、別のPCへの移行も楽チン 僕のBiscuitはこんな感じです⬇︎ 2. Notion 公式サイト -> Notion 結論から言うと、私はNotionがないとダメな体になっています 出会いは2020年の2月頃、メモ帳よりも自由度が高くて何か良いものはないだろうかと模索していた頃にジャストフィットしました 単純なメモも取れる、

    エンジニアなら知っておきたい生産性を爆上げするツール8選 - Qiita
  • 10行ぷよぷよのソースコードを読む - Qiita

    プログラマをする上では10行程度のプログラムを読めるといいとのこと。上記記事のブックマークコメントから飛んで10行ぷよぷよなるものを目にしたので、ソースコードを解読してみました。 解説記事を探したのですが、見当たらなかったので書いてみてます。 10行ぷよぷよについて javascriptで動くぷよぷよです。 開発者のPascalさんのサイトはもう残っていないとのことで、下記からソースを拝借しました。 実行すると、一人用のとことんぷよぷよが遊べます。 そのまま実行しても怒られるので、後述しますがちょっとだけ手を加えてます。 <body onKeyDown=K=event.keyCode-38 id=D><script>for(M=N=[i=113];--i;M[i-1]=i%8< 2|i<8)function Y(){e++;if(e%=10)for(N=[K-2?K-50?h-=M[h+l

    10行ぷよぷよのソースコードを読む - Qiita
  • PHP7.4 ぼくのかんがえたさいきょうのphp.ini - Qiita

    ストーリー PHPをインストールしたら必ず行う php.ini の設定ですが、 ネット上ではPHP5系の情報がたくさん出回っており、非推奨または削除された設定例が数多く困り果てていました。 良い感じにまとめてくれてるサイトが見つからなかったので、最強でベストプラクティスな php.ini 推奨設定を考えました。 異論は受け付けますので、ぜひコメントください。 参考設定 PHPでは、開発用と番用の設定例を用意してくれています。 なんと素晴らしいことなんでしょうか。これをベースに設定します。 https://github.com/php/php-src/blob/master/php.ini-development https://github.com/php/php-src/blob/master/php.ini-production 予め以前の記事で設定の差分を調べておきましたので、よか

    PHP7.4 ぼくのかんがえたさいきょうのphp.ini - Qiita
  • 2020年にWebフロントエンドを勉強する人が作るべきたったひとつのアプリ - Qiita

    最近ではReactVueを使ったリッチでインターラクティブなUIがどんどん主流になってきていますし、2020年以降もこの流れは加速し続けるでしょう。 SPA(Single Page Application)やPWA(Progressive Web Application)の普及によって今までモバイルでしかできなかったことがwebでもどんどんできるようになってきています。 また、Firebaseを使うことでクラアントサイドだけの高速なサービス開発が可能になってきていて、今後ますますWebフロントエンドのニーズは増えるのは確実です。 (サーバーサイドが必要ないという主張がしたいのではありませんが) Webフロントエンドをどのように勉強するのか 初心者に立ちはだかる壁 しかし、何か作ってみようと思ってもなかなかほどよいアプリがありません。TODOぐらい簡単なものだと雰囲気を掴むのにはちょうどい

    2020年にWebフロントエンドを勉強する人が作るべきたったひとつのアプリ - Qiita
  • Chrome 80が密かに呼び寄せる地獄 ~ SameSite属性のデフォルト変更を調べてみた - Qiita

    Chrome 79以下や他ブラウザのデフォルト値。 Chrome 80からこの値を設定する場合、Secure属性も必須となる。 Aサイトに対し、Bサイトからどのようなリクエストがあっても、発行したサイトでCookieヘッダーに含める (Cookieを使用する) 図にすると以下のようになります。 Strict 外部サイトからのアクセスではCookieを送らない。 Lax 外部サイトからのアクセスはGETリクエストのときだけCookieを送る。 None 従来通りの動き。 【追記】なおChrome 80以降でSecure属性を付けずSameSite=Noneを指定した場合、set-cookie自体が無効になります。 セキュリティ上の効果 CSRF対策になります。 CSRF (クロスサイト・リクエスト・フォージェリ) とは、 WEBサイトがユーザー人の意図した動作であることを検証していないため

    Chrome 80が密かに呼び寄せる地獄 ~ SameSite属性のデフォルト変更を調べてみた - Qiita
  • 要件定義~システム設計ができる人材になれる記事 - Qiita

    はじめに 株式会社デジサク がお送りするプログラミング記事、 今回は要件定義・システム設計について扱っていこうと思います。 プログラミングを勉強していて、こんな事を感じた経験はないでしょうか。 「勉強してもプロダクトが作れない」 「そもそも開発ってどうやるの?」 「要件定義ってなに?」 その悩みを解決するために、まずは開発の全体感を理解しましょう。 下図『ソフトウェア開発プロセス』をご覧ください いつも勉強しているプログラミングは 『実装』 の部分に該当します。 つまり、プログラミングの実力を発揮する前に4つも壁が存在するのです。 そのため、記事では実装(プログラミング)を開始する前に必要となる、 『企画~設計』 について順を追って説明して行きます。 特に、エンジニアが理解しておくべき 『要件定義』『設計』 にフォーカスします。 なお、開発全体において実装(プログラミング)に使用する時間

    要件定義~システム設計ができる人材になれる記事 - Qiita
  • 【翻訳】徹底解説! PHP のセッション - Qiita

    PHP のセッションについて詳しく書かれた記事を見つけたので、訳しました。 原文は PHP Sessions in Depth です。 セッションを全く知らない人向けというよりは、セッションを普段なんとなく使っている人向けの記事かと思います。 個々のトピックスについてはもっと深く書かれた記事もあると思いますが、複数のトピックスをまとめて扱った記事は少ないように思ったのが訳そうと思ったきっかけです。 なお、今回はかなり意訳気味なのでご了承ください。あと、個人的な勉強も兼ねて訳注をかなり付けています。 徹底解説! PHP のセッション PHP のセッションは軽視されがちです。セッションとは、ページをまたいで持続し、ユーザーに固有のデータを保持する魔法の配列のことです。大半の Web アプリケーションにおいて、それは夢のようなもので、無くてはならないものです。しかし、間違った使い方をすると、セッ

    【翻訳】徹底解説! PHP のセッション - Qiita
  • SQLアンチパターンもりもりDBを設計しよう! - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 概要 名著SQLアンチパターンを読み終えたので、それの復習のために悍ましいデータベースを作ろうと思った。 まず前半では、SQLアンチパターンを意図的に盛り込み、目も当てられない酷い設計をします。 そのあとリファクタリングを行なったER図に書き直していきます。 なお、真面目に書くと参考書の丸写しになってしまうので、この記事は アンチパターンもりもりのER図を見て嫌悪感を学習し、設計に役立てようという趣向のもと、詳しい説明は省きます。 とても良いなので読んでください。 想定するシステムの概要と状況 目的において適切かはわかりませんが、とり

    SQLアンチパターンもりもりDBを設計しよう! - Qiita
  • 個人的に超絶為になったので新人エンジニアに勧めたい記事まとめ - Qiita

    Register as a new user and use Qiita more conveniently You get articles that match your needsYou can efficiently read back useful informationYou can use dark themeWhat you can do with signing up

    個人的に超絶為になったので新人エンジニアに勧めたい記事まとめ - Qiita
  • Laravelで実践クリーンアーキテクチャ - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? この記事を書くにあたって Laravel について色々サポートしてくれた皆さまに向けてお礼申し上げます。ありがとうございました。 記事はクリーンアーキテクチャに対する理解を深めていただくために、「実践クリーンアーキテクチャ」の内容を Laravel で実装して解説するという内容になっています。 記事のゴールは「クリーンアーキテクチャに対する理解を深めてもらう」というものです。つまり、この実装の形は一例に過ぎません。 はじめに 皆さんクリーンアーキテクチャはご存知でしょうか。 そう、こんな図のアレです。 The Clean Archit

    Laravelで実践クリーンアーキテクチャ - Qiita