Lingjuan Lyu, Xing Xie, Binxing Jiao, Fangzhao Wu, Tong Xu, Bin Zhu, Wenjun Peng, Jingwei Yi, Guangzhong Sun, Shangxi Wu
We lifted 10 functions out of this paper's own repositories and ran 2 of them in a sandbox. "Ran" means the function executed on a synthesized input and returned a value. It is not a reproduction of the paper's results.
| Repository | Role | Ran |
|---|---|---|
| yjw1029/embmarker | canonical | 0 of 8 |
| yjw1029/EmbMarker | — | 2 of 2 |
| Function | Status | Where it lives |
|---|---|---|
| BackDoorClassifyOutput | Ran | yjw1029/EmbMarker/src/model/copier/bert.py code served (permissive licence) · get_code("903f1433d8d2db1f") |
| BertForClassifyWithBackDoor | Ran | yjw1029/EmbMarker/src/model/copier/bert.py code served (permissive licence) · get_code("86093b919ea4359f") |
| convert_mind_tsv_dict | Not yet run | yjw1029/embmarker/src/dataset/utils.py code served (permissive licence) · get_code("1c3e5679dd810aea") |
| eval_copier | Not yet run | yjw1029/embmarker/src/run_gpt_backdoor.py code served (permissive licence) · get_code("b3400e6c8205d71d") |
| flatten | Not yet run | yjw1029/embmarker/src/utils.py code served (permissive licence) · get_code("f77001035699a79b") |
| get_label_dict | Not yet run | yjw1029/embmarker/src/dataset/utils.py code served (permissive licence) · get_code("2d6b92ecffe170d3") |
| load_gpt_embeds | Not yet run | yjw1029/embmarker/src/dataset/emb_cache.py code served (permissive licence) · get_code("a56d8bae91268b94") |
| load_mind | Not yet run | yjw1029/embmarker/src/dataset/utils.py code served (permissive licence) · get_code("77269134ce3b18bc") |
| merge_flatten_metrics | Not yet run | yjw1029/embmarker/src/utils.py code served (permissive licence) · get_code("37ec69a16ec99bbd") |
| train_copier | Not yet run | yjw1029/embmarker/src/run_gpt_backdoor.py code served (permissive licence) · get_code("5bbc5ec0e19a75ed") |
Some links come from the archived Papers with Code dataset (CC BY-SA 4.0): attribution and licence.
Large language models (LLMs) have demonstrated powerful capabilities in both text understanding and generation. Companies have begun to offer Embedding as a Service (EaaS) based on these LLMs, which can benefit various natural language processing (NLP) tasks for customers. However, previous studies have shown that EaaS is vulnerable to model extraction attacks, which can cause significant losses for the owners of LLMs, as training these models is extremely expensive. To protect the copyright of LLMs for EaaS, we propose an Embedding Watermark method called EmbMarker that implants backdoors on embeddings. Our method selects a group of moderate-frequency words from a general text corpus to form a trigger set, then selects a target embedding as the watermark, and inserts it into the embeddings of texts containing trigger words as the backdoor. The weight of insertion is proportional to the number of trigger words included in the text. This allows the watermark backdoor to be effectively transferred to EaaS-stealer's model for copyright verification while minimizing the adverse impact on the original embeddings' utility. Our extensive experiments on various datasets show that our method can effectively protect the copyright of EaaS models without compromising service quality. Our code is available at https://github.com/yjw1029/EmbMarker.
The same record, over MCP at https://syntology.ai/mcp:
get_harvested_code_for_paper("2305.10036")
get_code_for_paper("2305.10036")
have("2305.10036")
Connect an agent — have() is free.