https://drecom.connpass.com/event/300236/presentation/
「LLM」の「LoRA」「RLHF」によるファインチューニング用のツールキットをまとめました。 1. PEFT「PEFT」は、モデルの全体のファインチューニングなしに、事前学習済みの言語モデルをさまざまな下流タスクに適応させることができるパッケージです。 現在サポートしている手法は、次の4つです。 ・LoRA ・Prefix Tuning ・P-Tuning ・Prompt Tuning ◎ LLaMA + LoRA 「Alpaca-LoRA」は、「LLaMA」に「LoRA」を適用して「Alpaca」の結果を再現するためのコードが含まれているリポジトリです。「finetune.py」がLoRAの参考になります。 ・tloen/alpaca-lora ◎ RedPajama-INCITE + LoRA 「INCITE-LoRA」は、「RedPajama-INCITE」に「LoRA」を適用する
こんにちは、iCAREサーバーサイドエンジニアの寺井(@krpk1900_dev)です。 私は今まで新規機能の開発を担当することがほとんどで、既存機能のパフォーマンス改善に取り組むときに何から手を着けて良いか分からなかったため、今回はSQLパフォーマンスチューニングについて調べた内容を記事にしたいと思います。 全体の流れ ざっくり調べてみた内容をフローチャートで整理してみました。 このフローチャートには含めませんでしたが、根本的な解決策としてそもそものロジックやデータ構造を見直すという方法もあります。 1. レスポンスに時間がかかっている箇所とその原因を特定する まずはDatadogのAPMなどでレスポンスに時間がかかっているリクエストを特定します。 APM(Application Performance Monitoring)とは、アプリケーションの性能を管理したり監視するための機能です
こんにちは。検索基盤部の山﨑です。検索基盤部では、検索基盤の速度改善やシステム改善だけではなく検索の精度改善にも力を入れて取り組んでいます。 検索システム改善についての過去の取り組み事例は、こちらのリンクをご参照ください。 techblog.zozo.com また、ZOZOTOWNの検索ではElasticsearchを活用しています。Elasticsearchに関する取り組み事例はこちらのリンクをご参照ください。 techblog.zozo.com 本記事では、ZOZOTOWNで近年実施した検索の精度改善の取り組み事例を紹介します。 目次 目次 はじめに ZOZOTOWN検索の処理フロー ZOZOTOWN検索改善の方針について 商品のリランキングロジックについて 商品のリランキングロジックの概要 特徴量ロギングの導入について 今後のZOZOTOWN検索の展望 おわりに はじめに ZOZOT
通称 #ISUCON本 を著者様からご恵贈いただきました。ありがとうございます。 gihyo.jp 所感 この書籍、言っていいのかわかりませんがまったくの初心者・初学者には難しい本かもしれません。私の感触では、Webサイトのプログラム作成、改修、構築、運用などに携わったり、Webサイトのパフォーマンスの問題に向き合ったことがある人が対象読者だと思いました。職種でいえばバックエンドエンジニア、インフラエンジニア、SREなどですね。もちろんそういった職種を目指している方や、純粋にISUCONに挑戦したい、パフォーマンスチューニングに興味がある、といった方も含まれます。 この本は特定の問題に対する直接的な答えではなく、パフォーマンスチューニングの考え方を教えてくれる内容になっています。この本を参考に実際に手を動かして実践するのが良いでしょう。現実のWebサイトをチューニングするでもいいですし、そ
去年からフロントエンドのパフォーマンスについて断続的に学んでいるが、自分の頭のなかにある知識はどれも断片的で、まとまりを欠いているような感覚があった。 知識と知識がつながっておらず、各施策が何のために行われるのかも、必ずしも自明ではなかった。何となく「パフォーマンスに効果がある」と言ってしまうが、それが何を指しているのかは実は曖昧だった。 このような状態では新しい知識を得ていくのが難しいというか、効率的に行えないように思えた。議論の背景が分からないし、文脈や問題意識を上手く掴めないから。何の話をしているのかよく分からない、という状態になりがち。書かれてあることの意味は分かっても論旨を掴めているわけではないから、自分のなかに定着しない。 そこで、現時点で自分が知っていることを整理して、自分なりに分類しておくことにした。 当たり前だが、どのテクニックがどの程度有効なのかは、状況によって違う。
おはようございます、なのくろです。年の瀬ですね。 この記事は ABEJA Advent Calendar 2020 の最終日です。 追記:おかげさまで Qiita LGTM賞 を受賞いたしました、ありがとうございます! 私は2020年01月にABEJAへ入社しました。チームではフロントエンド開発全般を任されています。 参入してちょうど1年が経過しましたので、今年取り組んだことをまとめました。 「フロントエンドを100倍速く」というタイトルは誇張気味なのですが、難しいことはせず、基本的なパフォーマンス改善を素直に実践したという話を書きます。 本稿では事例とやったことを紹介するのみですが、何かしらの知見や改善のきっかけに役立てば幸いです。 サービスについて 話をする前に、どんなサービスを開発しているかについて少しだけ触れます。 ABEJA社では「Insight for Retail」という、小
web vitailsはchrome extentionを使って簡単に計測できます。 広告への影響 ・リスティング広告の表示順位、ROIに影響する(出典) -Googleのメディアには、「広告と速度は密接に関連しており、ランディングページが高速であるほど、ROIが向上します」と記載がある ・chrome83から重たいディスプレイ広告をブロックする(出典) -デバイスのリソースを過度に消費する広告は、バッテリーの消耗や帯域幅の許容量の消費など、UXに悪影響を及ぼします。そのため、いずれかを満たす広告はブロックされます。 -メインスレッドを合計60秒以上使用する -メインスレッドを30秒のウィンドウで15秒以上使用する -4メガバイト以上のネットワーク帯域幅を使用 このように、パフォーマンスが重要視される中で、SUUMOがどのように継続的なパフォーマンス維持・改善活動を行なっているのか紹介して
はじめに CTOの川口 (id:dmnlk) です。 5月にオンラインmeetupをさせて頂きその中で「具体的な負荷対策に関しては開発ブログで!」と言っていた件ですが気づいたらもう9月になりかけていました。 コロナ禍においてネットショップ作成サービス「BASE」の利用者様が急増しました。 www.nikkei.com 5 月には 100 万ショップを超えるショップオーナー様にご利用していただいております。 今まで EC 事業を行っていなかった飲食店様や様々な業種の方が利用をはじめていただき、ショップオーナー様も購入者様共に短期の見通しでは想定をしていないアクセスが発生しました。 その途中でシステムとして対応しきれない面もあり、アクセス負荷によるサービスの不安定を招き皆様にはご不便や販売時間を変更していただくお願いなどをしてしまい大変申し訳ありませんでした。 現在では安定しておりますが、その
この記事は、AbemaTV Advent Calendar 2017 の25日目の記事です。 今年、サイバーエージェントに新卒入社し、AbemaTVの配信チームに所属している @miyukki です。 このアドベントカレンダーも最終日になりました。11月末まで誰もやる気配がなかったのですが、社内で声を上げて広めた結果、多くの人が書いてくれてありがたいです。なんでも気軽に自由に発言できるのもこの職場の良いところです。 72時間ホンネテレビ さて本題に戻り、AbemaTVでは11月2日-5日にかけて、稲垣・草彅・香取 3人でインターネットはじめます『72時間ホンネテレビ』(以下、ホンネテレビ)を放送しました。 言い出しづらいのですが、過去には「亀田興毅に勝ったら1000万円」AbemaTV史上最多アクセスでサーバダウンと記事になるなど、急激なアクセス増加でサービスを提供できなかった例がありまし
プロローグ node --helpでnodeの起動オプションを見てみると、実はひっそりと--v8-optionsという初心者お断りオーラを醸し出しまくってるオプションがあります。 Node.jsの公式ドキュメントによると Print v8 command line options. Note: V8 options allow words to be separated by both dashes (-) or underscores (_). For example, --stack-trace-limit is equivalent to --stack_trace_limit. どうやらV8エンジンの起動オプションをnodeコマンドでも与えられるようです。 ついでに、「-」と「_」はどっちでもいいようです。 で、この--v8-optionsを駆使すればNode.jsのパフォーマンス
経緯 去年、ISUCONに参加してみました。少しの爪痕も残すことなく敗退しました。 Node.jsをチョイスしましたが、慣れないasync/awaitとすさまじいhtmlifyの前に、何もできずに終わりました。 で、今年のISUCON7でリベンジすべく、特訓を始めました。 いろいろと調べていると、こんな情報がありました。 ISUCON6 オンライン予選の利用言語比率 あれ、Node.jsで本戦に出場しているチームがない… と思ったので、少し心に火がつきました。 目標 ISUCON6 本選出場者決定のお知らせを見る限り、90,214点を超えられれば良いらしい。 または、学生になれば良いらしい。でも、社会人学生じゃダメらしい。 ということで、90,214点を超えるのが目標。 参考 このまとめにあるブログエントリをめちゃ参考にさせて頂きました。 みなさまありがとうございます。 【更新終了】ISU
以下はPlaying APK Golfの日本語訳です。 Playing APK Golf Reducing an Android APK's size by 99.99% ゴルフでは、最も得点の小さい者が勝利します。 この原則をAndroidにも適用しましょう。 apkのファイルサイズを減らし、Oreoで実行できる最小サイズのアプリを作成するのです。 Measuring a Baseline Android Studioで生成されたデフォルトのアプリから開始しましょう。 キーストアを生成し、アプリに署名し、そしてstat -f%z $filename.コマンドでファイルサイズをバイト単位で測定します。 また、Oreoが動いているNexus5にapkをインストールし、アプリが実際に動作することも確認します。 すばら! apkのファイルサイズは約1.5メガバイトでした。 APK Analyse
こんにちは、17新卒エンジニアのジャンハンです。 現在はDMM電子書籍サービスの開発部門で改修、保守の業務を担当しています。 サーバーサイド(PHP)がメインで、フロントの実装も度々あったりしまして、たまーーーにデプロイツールの実装や環境周りの業務も担当しています。 本日はDMM.com #2 Advent Calendar 2017の6日目を担当させていただき、新米エンジニアが電子書籍サービスの速度改善タスクを担当した時のアプローチについて文章にまとめました。 カレンダーのURLはコチラ DMM.com #1 Advent Calendar 2017 DMM.com #2 Advent Calendar 2017 速度改善の指標 webサイトのアクセス速度に影響する要素は、css、jsの圧縮、画像の圧縮、初期レンダリング情報量、画像サーバーの返答速度等がありますが、今回の担当はメインサー
なぜ、SQLは重たくなるのか?──『SQLパフォーマンス詳解』の翻訳者が教える原因と対策 『SQLパフォーマンス詳解』の翻訳者の松浦隼人さんに、8つの「SQLが重たくなる原因とその対策」を聞きました。システムのボトルネックになるような「問題のあるSQL」を回避するノウハウを学びましょう。 データの操作や定義をする言語「SQL」は、どのような領域を担うエンジニアにとっても必修科目です。しかし、その仕様をきちんと理解し、パフォーマンスに優れたSQLを書ける方はそれほど多くありません。問題のあるSQLを書いてしまい、知らぬ間にそれがシステムのボトルネックになってしまう事態はよく発生します。 では、どうすればそうした事態を回避できるのでしょうか? そのノウハウを学ぶため、今回は『SQLパフォーマンス詳解』の翻訳者であり、自身もエンジニアでもある松浦隼人(まつうら・はやと/@dblmkt)さんに8つ
こんにちは、サービス開発部の荒引 (@a_bicky) です。 突然ですが、RDBMS の既存のテーブルを見てみたら「何でこんなにインデックスだらけなの?」みたいな経験はありませんか?不要なインデックスは容量を圧迫したり、挿入が遅くなったりと良いことがありません。 そんなわけで、今回はレコードを検索するために必要なインデックスの基礎知識と、よく見かける不適切なインデックスについて解説します。クックパッドでは Rails のデータベースとして主に MySQL 5.6、MySQL のストレージエンジンとして主に InnoDB を使っているので、MySQL 5.6 の InnoDB について解説します。 InnoDB のインデックスに関する基礎知識 インデックスの構造 (B+ 木) InnoDB では B+ 木が使われています。B+ 木は次のような特徴を持った木構造です。 次数を b とすると、
大人気TBSドラマ、「逃げるは恥だが役に立つ」でも話題になったインフラエンジニアという言葉ですが、今ではインターネットインフラを知らないまま開発をするのも難しい状況になっています。クラウドが一般化されたからといって単にリソースの調達が簡単になっただけで、つまりハードウェアの知識が無くても何とかやっていけるようになっただけであり、インフラの知識が要らなくなったなどということは全くなく、むしろdevopsの掛け声とともに、ソフトウェア開発者にインフラを見なければならない新たな責務が課せられたという、なかなか痺れる状況なのだろうと思います。 そういった中で、先日のさくらインターネットのAdvent Calendar最終日に「いまさら聞けないLinuxとメモリの基礎&vmstatの詳しい使い方」という記事を書かせて頂きましたが、今回はLinuxサーバの「負荷」と、ロードアベレージに関して、掘り下げ
今回はオールアバウトのnnmrが弊社サイトAll About Japanの速度を高速化した経緯についてまとめます。 All About Japanとは そもそもAll About Japan(以下AAJ)とは何かといいますと、弊社が提供している訪日外国人向けの日本紹介サイトです。 外国人向けサイトで、英語、中国語(繁体字)、中国語(簡体字)、タイ語、韓国語の5か国語に対応しております。 「Anime」「Izakaya」「Ninja」といったような特集や、実際に観光する人向けのモデルルート記事が特色です。 ■ 特集 (url : http://allabout-japan.com/en/tag/sushi/ ) ■ モデルルート記事 (url : http://allabout-japan.com/en/article/222/ ) 技術的な紹介 LAMP環境です。 (サーバー構成は後に記述
2016 - 07 - 01 さらなる高みへ〜iOSのMERYでなめらかなスクロールを実現するためにやった4つのこと list Tweet こんにちは。 iOS を主に担当していますアプリエンジニアのkazutoyoです。 MERYのアプリチームでは、チューニングを「さらなる高みへシリーズ」と名づけて、日々アプリの改善をしています。 今回はその中で行ったUITableViewやUICollectionViewのスクロール周りを滑らかにする改善についてやったことをご紹介したいと思います。 1. CALayerで角を丸くしている部分のパフォーマンスが悪い このようなカード型のViewが並んでいるCollectionViewがあったのですが、画像の角を丸くするのにCALayerで cornerRadius をつけているところのパフォーマンスがあまり良くないようでした。 これを次のようにCor
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く