GitShow/facebook/ThreatExchange
facebook

ThreatExchange

Trust & Safety tools for working together to fight digital harms.

by facebook
hashingimageimage-hashingimage-similarityncmecperceptual-hashingstopnciithreatexchange
Star on GitHubForkWebsite

C++

1.4k stars354 forks130 contributorsActive · 2d agoSince 2015hma-v1.1.7

Meet the team

See all 130 on GitHub →
Dcallies
Dcallies486 contributions
johnkerl
johnkerl232 contributions
BarrettOlson
BarrettOlson191 contributions
dmukhg
dmukhg187 contributions
mgoffin
mgoffin152 contributions
jeberl
jeberl93 contributions
jessek
jessek61 contributions
juanmrad
juanmrad47 contributions

Languages

View on GitHub →
C++73.8%
Python16.7%
Java3.8%
JavaScript1%
Ruby0.9%
PHP0.8%
Other3.0%

Commit activity

Last 12 weeks · 8 commits

Full graph →

Community health

5 of 6 standards met

Community profile →
87
✓README✓License✓Contributing✓Code of Conduct○Issue Template✓PR Template

Recent fixes

View closed PRs →
berkona
[hma] Fix kwarg parameter for relativedeltaMergedPR

Summary The value of the "sec" parameter is a float of seconds not microseconds. Changed to "seconds" so relativedelta is computed correctly. This was causing any time longer than 1 second to be formatted as "0 seconds". See docs here https://dateutil.readthedocs.io/en/stable/relativedelta.html Test Plan I have currently not added any test coverage for this issue

berkona · 2d ago
jess-upscrolled
[pytx] Drop redundant PDQ hex strings from PDQIndex sidecarMergedPR

Summary Stop storing PDQ hex strings in ; keep only match metadata (typically ), since FAISS already holds the vectors. Migrate legacy pickled sidecars on unpickle via so existing HMA index blobs keep working until rebuild. Add coverage that new pickles store metadata-only and that legacy sidecars still query correctly. This should lower steady-state matcher RSS for large PDQ indexes (one fewer Python string per hash in the sidecar). It does not address FAISS refresh/leak behavior. Test plan [x] [x] and [ ] Confirm HMA matcher can load an existing pickled index LOB and return matches [ ] After indexer rebuild, confirm new LOBs pickle metadata-only sidecars and memory footprint drops vs baseline

jess-upscrolled · 1w ago
michael-lum
Add Terms of Use and Privacy Policy links to docs site footerMergedPR

Summary Adding in Meta's open source terms of use and privacy policy links to the home page. Test Plan

michael-lum · 1mo ago
Structured data for AI agents

Repository: facebook/ThreatExchange. Description: Trust & Safety tools for working together to fight digital harms. Stars: 1373, Forks: 354. Primary language: C++. Languages: C++ (73.8%), Python (16.7%), Java (3.8%), JavaScript (1%), Ruby (0.9%). Homepage: https://facebook.github.io/ThreatExchange/ Topics: hashing, image, image-hashing, image-similarity, ncmec, perceptual-hashing, stopncii, threatexchange, video, video-hashing, video-similarity. Latest release: hma-v1.1.7 (2mo ago). Open PRs: 6, open issues: 45. Last activity: 2d ago. Community health: 87%. Top contributors: Dcallies, johnkerl, BarrettOlson, dmukhg, mgoffin, jeberl, jessek, juanmrad, dependabot[bot], mengyangwang and others.

·@ofershap

Replace github.com with gitshow.dev