1. 滴滴在 GitHub 開源了哪些有意思的項目?

        共 8382字,需瀏覽 17分鐘

         ·

        2020-08-09 21:09

        來自?| 滴滴技術

        作為卓越的一站式移動出行和生活平臺,滴滴在亞洲、拉美和澳洲為超過 5.5 億用戶提供出租車、快車、專車、豪華車、公交、代駕、企業(yè)級、共享單車、共享電單車、汽車服務、外賣、支付等多元化的服務。滴滴平臺上,有數(shù)千萬車主及司機獲得靈活的工作和收入機會,年運送乘客超過 100 億人次。

        ?

        滴滴開源的三年時間里,在滴滴高級副總裁、開源委員會主席章文嵩博士的倡導下,秉持「擁抱開放、合作共贏、創(chuàng)造價值」的理念。滴滴積極參與業(yè)界的開源項目,并不斷對外輸出內(nèi)部的優(yōu)秀項目。自 2017 年 6 月 30 日,滴滴首個開源項目 VirtualAPK 發(fā)布起,滴滴已發(fā)布了 40 + 個項目,獲得了 6.3W star,在社區(qū)獲得了良好反響。以下小編將帶大家速覽滴滴的 40 + 開源項目。(按首字母先后排序)



        1.?人工智能
        AoE??
        AoE 取名自 AI on Edge,是一個終端側 AI 集成運行時環(huán)境 (IRE)。AoE 以 “穩(wěn)定性、易用性、安全性” 為設計原則,幫助開發(fā)者將不同框架的深度學習算法輕松部署到終端高效執(zhí)行。
        項目地址:https://github.com/didi/aoe

        Athena
        Athena 是端到端自動語音識別(ASR)引擎的開源實現(xiàn)。目前,該項目支持基于連接器時間分類(CTC)的模型,基于變壓器的編解碼器模型和基于混合 CTC / 注意的模型以及基于 MPC 的無監(jiān)督預轉(zhuǎn)換的訓練和解碼。我們的愿景是增強語音識別的端到端模型的工業(yè)應用和學術研究。為了使所有人都能使用 ASR,我們還發(fā)布了一些示例示例,這些示例實現(xiàn)基于一些開源數(shù)據(jù)集,例如 HKSUT,Librispeech 我們所有的模型都在 Tensorflow> = 2.0.0 中實現(xiàn)。
        項目地址:https://github.com/didi/athena

        Chinese NLP
        中文自然語言處理(NLP)的相關鏈接:數(shù)據(jù)集和最新結果。
        項目地址:https://github.com/didi/ChineseNLP

        Delta??
        DELTA 是一個基于深度學習的語音和自然語言理解模型平臺,旨在打造一個便捷使用、簡潔上線、快捷開發(fā)的工業(yè)級的語音和自然語言理解的模型框架。
        項目地址:https://github.com/didi/delta

        DLFlow
        DLFlow 是一套深度學習 pipeline,它結合了 Spark 的大規(guī)模特征處理能力和 Tensorflow 模型構建能力。利用 DLFlow 可以快速處理原始特征、訓練模型并進行大規(guī)模分布式預測,十分適合離線環(huán)境下的生產(chǎn)任務。
        項目地址:https://github.com/didi/dlflow

        HetSANN
        AAAI'20 論文中的 HetSANN 的源代碼:異構結構學習的基于注意力的圖神經(jīng)網(wǎng)絡。
        項目地址:https://github.com/didi/hetsann

        maskdetection
        為了進一步幫助抵抗冠狀病毒,滴滴出行決定向公眾免費開放其面罩檢測技術。由 DiDi AI 團隊開發(fā)的遮罩檢測技術基于 DFS 面部檢測算法,DiDi 在其平臺上采用了面部屬性識別算法。該模型克服了一些困難,例如白天復雜的光照變化,面部姿勢變化,面部比例等。它使用加權損失函數(shù)和數(shù)據(jù)增強方法來處理白天和晚上的不同蒙版類型和不均勻蒙版數(shù)據(jù)。
        該系統(tǒng)可以使用上傳的圖像識別非掩膜駕駛員,其準確度為 99.5%,并且在 DiDi 車載攝像頭的現(xiàn)場檢查中,可以達到 98%的準確度。該模型在 200,000 張面孔的數(shù)據(jù)集上進行了訓練,以確保其魯棒性。
        這種快速檢測系統(tǒng)可廣泛用于旅行場景中,包括手機照片,監(jiān)視圖像等,并且能夠全天候工作。
        項目地址:https://github.com/didi/maskdetection

        SQLFlow
        滴滴 DS 統(tǒng)計科學團隊立足于公司內(nèi)部常用業(yè)務場景的需求出發(fā),與螞蟻金服 SQLFlow 初始研發(fā)團隊之間從模型、社區(qū)、與文化上全方位合作共建。雙方能力優(yōu)勢互補,資源協(xié)同性強,旨在推進并實現(xiàn)只要懂商業(yè)邏輯就能用上人工智能,讓最懂業(yè)務的人也能無障礙地使用人工智能。
        項目地址:https://github.com/sql-machine-learning/sqlflow


        2.?智慧交通
        ALITA/ALITA-UI
        ALITA(A Layered Instrument To Analyze)是由小桔車服數(shù)據(jù)部出品的一種基于圖層展示數(shù)據(jù)分析工具,我們通過大量業(yè)務需求實現(xiàn)沉淀抽象出通用化的 “點”、“線”、“面” 三種數(shù)據(jù)模型,和地圖豐富的點、線、面設計元素完美融合,設計并封裝前后端通用的模塊化組件,實現(xiàn)快速搭建地圖應用。
        項目地址:https://github.com/didi/ALITA

        mtmc-vt
        該代碼用于 AI City Challenge 2019 Track1,MTMC Vehicle Tracking。
        項目地址:https://github.com/didi/mtmc-vt

        TrafficIndex
        TTI 是業(yè)內(nèi)使用較多的城市擁堵程度的評價指標,是反應實際花費的行程時間與自由流花費行程時間的比值關系,值越大表示交通運行狀態(tài)越差,一般與擁堵程度正相關,其它如異常天氣(如雨、雪、霧等)或者異常道路情況也可能對 TTI 的數(shù)值產(chǎn)生影響。
        項目地址:https://github.com/didi/TrafficIndex

        3.?中間件與架構

        Booster
        Booster 是一款專門為移動應用設計的易用、輕量級且可擴展的質(zhì)量優(yōu)化框架,通過動態(tài)發(fā)現(xiàn)和加載機制提供可擴展的能力。它不僅僅是一個框架,更內(nèi)置了豐富的質(zhì)量優(yōu)化工具。
        項目地址:https://github.com/didi/booster

        DDMQ
        DDMQ 是滴滴出行架構部基于 Apache RocketMQ 構建的消息隊列產(chǎn)品。作為分布式消息中間件,DDMQ 為滴滴出行各個業(yè)務線提供了低延遲、高并發(fā)、高可用、高可靠的消息服務。DDMQ 提供了包括實時消息、延遲消息和事務消息在內(nèi)的多種消息類型以滿足不同的業(yè)務需求。用戶通過統(tǒng)一的 Web 控制臺和傻瓜式的 SDK 即可輕松接入 DDMQ 生產(chǎn)和消費消息,體驗功能豐富、穩(wěn)定的消息服務。
        項目地址:https://github.com/didi/DDMQ

        Go-Spring
        Go-Spring 的愿景是讓 GoLang 程序員也能用上如 Java Spring 那般威力強大的編程框架。特性:提供完善的 IoC 容器,支持依賴注入、屬性綁定;提供強大的啟動器框架,支持自動裝配、開箱即用;提供常見組件的抽象層,支持靈活地替換底層實現(xiàn);Go-Spring 當前使用 Go1.12 進行開發(fā),使用 Go Modules 進行依賴管理。
        項目地址:https://github.com/didi/go-spring


        4.?
        大數(shù)據(jù)
        ES-Fastloader
        ES-Fastloader 是一種能夠快速地為海量離線數(shù)據(jù)生成索引的方案,采用了一種 Build & Push 的機制,利用 Hadoop 強大的并行計算能力,可在 1-2 小時內(nèi)極快速構建幾十 TB 級的數(shù)據(jù),解決海量數(shù)據(jù)構建 ES 時,索引文件構建時效低的問題。
        項目地址:https://github.com/didi/ES-Fastloader

        Levin
        Levin 是針對低頻更新、靜態(tài)使用、大規(guī)模數(shù)據(jù)的快速加載解決方案。Levin 實現(xiàn)了一套使用在?shm?共享內(nèi)存片段上的?STL-like 容器,高效托管大規(guī)模靜態(tài)數(shù)據(jù),加速大內(nèi)存服務冷啟動和熱加載。具備簡單易用、效率高、性能好、內(nèi)存省的優(yōu)點。
        項目地址:https://github.com/didi/levin


        5.?運維監(jiān)控
        Elastic-trib
        Elastic-trib 是一個 Elasticsearch 集群管理命令行工具,用于管理公司內(nèi)部 30 多個 Elasticsearch 集群,方便用于集成到 shell 腳本及通過命令行終端對集群進行管控。
        項目地址:https://github.com/ didi/elastic-trib

        falcon-log-agent
        falcon-log-agent 是一個開源版的日志采集工具,旨在從流式的日志中抓取、統(tǒng)計日志中的特征信息。獲取的特征信息,與開源版 Open-Falcon 監(jiān)控系統(tǒng)打通。可用于業(yè)務指標的衡量、也可用于穩(wěn)定性的建設。
        項目地址:https://github.com/didi/falcon-log-agent

        Kafka-Manager
        一站式 Apache Kafka 集群指標監(jiān)控與運維管控平臺。
        項目地址:https://github.com/didi/kafka-manager

        Nightingale
        夜鶯(Nightingale)是滴滴基礎平臺聯(lián)合滴滴云研發(fā)和開源的企業(yè)級監(jiān)控解決方案。旨在滿足云原生時代企業(yè)級的監(jiān)控需求。Nightingale 在產(chǎn)品完成度、系統(tǒng)高可用、以及用戶體驗方面,達到了企業(yè)級的要求,可滿足不同規(guī)模用戶的場景,小到幾臺機器,大到數(shù)十萬都可以完美支撐。兼顧云原生和裸金屬,支持應用監(jiān)控和系統(tǒng)監(jiān)控,插件機制靈活,插件豐富完善,具有高度的靈活性和可擴展性。
        項目地址:https://github.com/didi/nightingale

        sqt
        此進程在滴滴云上用于管理機器上面的其他 agent,比如監(jiān)控的 agent、安全的 agent,管理主要是:安裝、升級、卸載、查看啟動狀態(tài),不做其他事情。省去客戶手工安裝其他 agent 的工作。
        項目地址:https://github.com/didi/sgt

        6.?小程序
        Chameleon
        cml?作為真正讓一套代碼運行多端的框架,提供標準的 MVVM 模式,統(tǒng)一開發(fā)各類終端。同時,擁有各端獨立的運行時框架 (runtime)、數(shù)據(jù)管理 (store)、組件庫 (ui)、接口 (api)。此外,cml?在跨端能力加強、能力統(tǒng)一、表現(xiàn)一致等方面做了許多工作。
        項目地址:https://github.com/didi/chameleon

        Mpx
        Mpx 是一款致力于提高小程序開發(fā)體驗和開發(fā)效率的增強型小程序框架,通過 Mpx,我們能夠高效優(yōu)雅地開發(fā)出具有極致性能的優(yōu)質(zhì)小程序應用,并將其輸出到各大小程序平臺和 web 平臺中運行。
        項目地址:https://github.com/didi/mpx

        7.?移動開發(fā)
        Echo
        Echo 是一款簡單易用、插件化易擴展、大屏顯示和操作的調(diào)試工具,旨在提高移動端的研發(fā)調(diào)試效率。基于現(xiàn)有的一些問題和團隊需求,我們開發(fā)了一款桌面端的調(diào)試工具 Echo,它可以幫助我們實時查看 App 各類數(shù)據(jù)(網(wǎng)絡請求、日志、埋點等),也可以無須改動代碼快速修改調(diào)試 App 的 UI 效果,提高我們的開發(fā)調(diào)試效率。
        項目地址:https://github.com/didi/echo

        DoraemonKit
        簡稱 DoKit,中文名哆啦 A 夢,意味著能夠像哆啦 A 夢一樣提供給他的主人各種各樣的工具。是一款功能齊全的客戶端( iOS 、Android )研發(fā)助手。能夠讓每一個 App 快速接入一些常用的或者你沒有實現(xiàn)的一些輔助開發(fā)工具、測試效率工具、視覺輔助工具,而且能夠完美在 Doraemon 面板中接入你已經(jīng)實現(xiàn)的與業(yè)務緊密耦合的一些非通用的輔助工具,并搭配我們的 dokit 平臺,讓功能得到延伸,接入方便,便于擴展。
        項目地址:https://github.com/didi/DoraemonKit

        DroidAssist
        DroidAssist 是一個輕量級的 Android 字節(jié)碼編輯插件,通過在 xml 進行簡單的配置即可實現(xiàn)對 class 文件進行動態(tài)修改。
        項目地址:https://github.com/didichuxing/DroidAssist

        VirtualAPK
        VirtualAPK 是滴滴出行自研的一款優(yōu)秀的插件化框架,通過將業(yè)務模塊插件化,可隨時更新插件來發(fā)布新功能,具備版本隨時發(fā)布的能力。該款插件化框架可幫助企業(yè)隨時通過更新插件的方式來發(fā)布新功能,包括修復嚴重 Crash 或進行業(yè)務 “試錯”,擁有功能完備、基本無入侵、插件可輕松訪問宿主代碼和資源、高兼容性這四大核心優(yōu)勢。
        項目地址:https://github.com/didi/VirtualAPK

        8.?系統(tǒng)工具
        Collection
        Collection 包目標是用于替換 golang 原生的 Slice,使用場景是在大量不追求極致性能,追求業(yè)務開發(fā)效能的場景。Collection 包目前支持的元素類型:int, int64, float32, float64, string, struct。
        項目地址:https://github.com/didi/collection

        GateKeeper
        GateKeeper 是一個使用 Go (golang) 編寫的不依賴分布式數(shù)據(jù)庫的 API 網(wǎng)關,使用它可以高效進行服務代理 以及 在線化服務配置并且你無需重啟服務器。
        項目地址:https://github.com/didi/gatekeeper

        Gendry
        Gendry 是一個用于輔助操作數(shù)據(jù)庫的 Go 包?;?go-sql-driver/mysql,它提供了一系列的方法來為你調(diào)用標準庫 database/sql 中的方法準備參數(shù)。
        項目地址:https://github.com/didi/gendry

        JuShaTa
        JuShaTa 是一個 Java 容器,提供模塊隔離及模塊熱加載能力。我們提供了一個類似于 Tomcat 的 Java 容器 JuShaTa,在 JuShaTa 容器中每個 SpringBoot 服務都是一個獨立的模塊。通過自定義 ClassLoader,不同模塊使用不同的 ClassLoader 進行加載,解決 jar 包沖突;使用 Spring Context 進行上下文隔離,每個模塊對應一個 Context,解決 bean 沖突。
        項目地址:https://github.com/didi/JuShaTa

        Kemon
        一個用于 macOS 內(nèi)核監(jiān)視的基于開源前后回調(diào)的框架。kemon 是一個基于 macOS 的內(nèi)核監(jiān)控框架,在 Windows 上內(nèi)核監(jiān)控有很好的基礎,但在 Mac 上還沒有一個較成熟的 hook 框架,去跟蹤更多的進程內(nèi)核事件的產(chǎn)生。Kemon 進一步完善,為 macOS 的內(nèi)核安全性的提高作出應有的貢獻。
        項目地址:https://github.com/didi/kemon

        SDS
        SDS(即 Service Downgrade System)是一個輕量級、簡單、易用的限流、熔斷、降級系統(tǒng),能讓 Java 應用做到自動限流、熔斷和快速恢復,提升應用整體的 “彈性”。現(xiàn)在服務端通過采用流行的微服務架構來應對錯綜復雜的大流量場景,并能在業(yè)務高速發(fā)展時仍然能做到較強的快速迭代能力和可擴展性。微服務架構并不是將整個系統(tǒng)變得更簡單,相反,微服務架構的管理難度高于普通的集中式架構,所以,如何保證系統(tǒng)的每個節(jié)點在錯綜復雜的環(huán)境下能穩(wěn)定提供服務,需要借助工具來讓服務節(jié)點能抵擋流量沖擊、熔斷依賴壞點。
        項目地址:https://github.com/didi/sds

        Tinyid
        Tinyid 是用 Java 開發(fā)的一款分布式 id 生成系統(tǒng),基于數(shù)據(jù)庫號段算法實現(xiàn),關于這個算法可以參考美團 leaf?或者?tinyid 原理介紹。Tinyid 擴展了 leaf-segment 算法,支持了多 db (master),同時提供了 java-client (sdk) 使 id 生成本地化,獲得了更好的性能與可用性。Tinyid 在滴滴客服部門使用,均通過 tinyid-client 方式接入,每天生成億級別的 id。
        項目地址:https://github.com/didi/tinyid

        9.?前端
        cube-ui
        應用 Vue 構建的的出色移動端 ui 庫工具。該技術擁有質(zhì)量可靠、體驗極致、標準規(guī)范和強擴展性這四大特點,并擁有獨特的后編譯技術方案幫助大幅優(yōu)化性能。cube-ui 的目標是讓移動端的開發(fā)更容易,讓開發(fā)人員更加專注于業(yè)務邏輯的開發(fā),提升研發(fā)效率。
        項目地址:https://github.com/didi/cube-ui

        di18n
        di18n 是一個自動轉(zhuǎn)換、基于配置的前端國際化方案。它能自動掃描代碼中的中文文案,將其替換成國際化標記;同時將語言抽取成配置,可以放到服務端保存及更新。
        項目地址https://github.com/didi/di18n

        Epage
        Epage 是一款基于 schema 的可視化頁面配置工具。由工單系統(tǒng)流程表單場景抽象而來,升級成為支持跨框架、組件庫渲染、可定制的通用頁面配置工具。常用于流程表單、中后臺頁面配置。
        項目地址:https://github.com/didi/epage

        Mand Mobile
        Mand Mobile 提供了 30 + 的實用組件,能夠滿足移動端頁面開發(fā)中的大部分需求。其中的業(yè)務類組件還針對金融領域,提取了包括圖表、數(shù)字鍵盤等,從而更好地滿足相關產(chǎn)品的開發(fā)需要。
        項目地址https://github.com/didi/mand-mobile

        Mand Mobile-RN
        Mand Mobile RN 是 Mand Mobile for React Native 的簡稱。作為 Mand Mobile 系列的 React Native 組件庫,在聚焦金融場景的同時,還提供了一些在 RN 項目中特有的組件和解決方案,皆在提升跨端項目的開發(fā)效率和 UI 體驗。
        項目地址:https://github.com/didi/mand-mobile-rn

        Pile.js
        使用 React 構建的輕量級移動組件庫。設計、前端高效協(xié)同,快速搭建移動端組件庫。
        項目地址:https://github.com/didi/pile.js

        Tips
        Tips 是一個靜態(tài)文案管理平臺。用于修改 Web 頁面的靜態(tài)文案,支持文案國際化,并提供提示信息的 UI 展示。它的目的是解決前端開發(fā)者頻繁的靜態(tài)文案修改問題,避免因為簡單的文案修改而發(fā)起復雜的上線流程。
        項目地址:https://github.com/didi/Tips

        10.?研發(fā)測試
        benchmark-thrift
        benchmark-thrift 是一款測試 Thrift 應用程序性能的工具,開箱即用,高效簡單。
        項目地址:https://github.com/didi/benchmark-thrift
        Rdebug
        Rdebug 是滴滴開源的一款用于 RD 研發(fā)、自測、調(diào)試的實用工具,可以被用來提升 RD 研發(fā)效率、保障代碼質(zhì)量進而減少線上事故。
        項目地址:https://github.com/didi/rdebug

        Sharingan
        Sharingan 是一個基于 golang 的流量錄制回放工具,錄制線上真實請求流量進行回放測試,適合項目重構、回歸測試等。隨著微服務架構的興起,服務之間的依賴關系變的越來越復雜,系統(tǒng)升級頻繁導致維護測試用例成本高,依賴下游眾多也很難提供穩(wěn)定的測試環(huán)境,為此,我們開發(fā)這套工具來緩解上述問題。
        項目地址:https://github.com/didi/sharingan

        thrift-mock
        thrift-mock 是一款輕量級的 Java 測試工具,用來模擬 thrift 服務。通過它可以輕松的將依賴的 thrift 服務接口進行 mock,獲得指定的接口返回,從而極大的提升了聯(lián)調(diào)、測試階段的開發(fā)效率。
        項目地址https://github.com/didi/thrift-mock


        源:滴滴技術

        版權申明:內(nèi)容來源網(wǎng)絡,版權歸原創(chuàng)者所有。除非無法確認,我們都會標明作者及出處,如有侵權煩請告知,我們會立即刪除并表示歉意。謝謝!



        感謝閱讀



        瀏覽 52
        點贊
        評論
        收藏
        分享

        手機掃一掃分享

        分享
        舉報
        評論
        圖片
        表情
        推薦
        點贊
        評論
        收藏
        分享

        手機掃一掃分享

        分享
        舉報
          
          

            1. 日韩国产成人无码A片 | 天天插插综合网 | 成人AV不卡 | 麻豆高清免费国产一区 | 国产免费黄色小视频 |