- 博客(115)
- 收藏
- 关注
原创 Learning to See in the Extremely Dark
学习型方法在低光照RAW图像增强领域已经取得了显著进展,但由于缺乏相应的数据集,其在极度黑暗场景(环境照度低至0.0001 lux)下的能力尚待探索。为此,我们提出了一种“配对到配对”的数据合成流程,可在三个精确的照度范围(0.01–0.1 lux、0.001–0.01 lux、0.0001–0.001 lux)生成校准良好的极低光照RAW图像,并配以高质量的sRGB参考图像,构建了一个大规模配对数据集“SIED”(See-in-the-Extremely-Dark),用于评测低光照RAW图像增强方法。
2025-12-12 23:19:23
1042
原创 APRMCTS: Improving LLM-based Automated Program Repair with Iterative Tree Search
自动程序修复(APR)尝试在无需人工干预的情况下修复软件漏洞,这在软件开发和维护中起着关键作用。近年来,随着大型语言模型(LLM)的发展,APR技术的数量迅速增加,且性能显著显著。然而,现有基于LLM的APR技术通常采用试错策略,但存在两个主要缺点:(1)由于本地探索导致补丁效果有限,(2)由于冗余探索导致搜索效率较低。本文提出了APRMCTS,利用迭代树搜索改进基于LLM的APR。APRMCTS通过对已探索的补丁进行全局评估,并选择最有前景的补丁进行后续细化和生成,将蒙特卡洛树搜索(MCTS)
2025-12-04 14:36:46
1028
原创 Re-factoring based Program Repair applied to Programming Assignments
自动化程序修复被用来为错误的学生编程作业提供反馈,因为程序修复捕捉了使某个有缺陷的程序通过特定测试套件所需的代码修改。现有的学生反馈生成技术有限,因为它们要么需要手动提供错误模型,要么需要大量正确的学生提交才能学习,或者缺乏可扩展性和准确性。在本研究中,我们提出了一种全自动化的方法,用于实时生成学生项目修复。这是通过先将所有可用的正确解重构为语义等价的解来实现的。给定一个错误的程序,我们会根据其控制流程结构匹配最接近的重构程序。随后,我们通过正确程序对齐的基本块的执行推断出错误程序基本块的输入输出规格。
2025-11-26 17:02:03
963
原创 Improving Fault Localization with External Oracle by Using Counterfactual Execution
本文提出了 Flex,一种利用外部预言机改进故障定位的新方法。基于频谱的故障定位(SBFL)技术根据测试套件的执行轨迹估计可疑语句。最先进的技术依赖于程序内部存在的测试预言机,然而,程序通常具有从外部观察其行为的外部预言机。这反过来在实际中阻碍了对可疑语句的细粒度和准确估计,因为每次执行的正确性只能在终止时观察到。在本文中,我们旨在通过观察反事实(counterfactual)执行轨迹来解决这一问题,该轨迹即使在没有精确内部预言机的情况下也能实现细粒度估计。
2025-11-20 22:31:23
943
原创 Counterexample Guided Program Repair Using Zero-Shot Learning and MaxSAT-based Fault Localization
基于零样本学习与MaxSAT故障定位的反例引导程序自动修复
2025-11-13 23:13:52
929
7
原创 RePair: Automated Program Repair with Process-based Feedback
程序可靠性的重要性与人工修复的高成本之间的矛盾,使得自动化程序修复(Automated Program Repair, APR)成为不可或缺的研究方向。APR能将存在缺陷的程序转化为更健壮的版本,不仅提升程序的可靠性,也显著降低人工修复所带来的经济负担。商业级的语言模型(LM)将APR提升到了前所未有的水平。然而,研究发现,当模型参数规模较小(如少于 100B 参数)时,仅通过单步修改往往难以实现理想修复效果。
2025-11-05 08:50:35
689
原创 RepairAgent: An Autonomous, LLM-Based Agent for Program Repair
自动程序修复已成为一种强大的技术,可以减轻软件错误对系统可靠性和用户体验的影响。本文介绍了 RepairAgent,这是第一个通过基于大语言模型 (LLM) 的自治代理来解决程序修复挑战的工作。现有的基于深度学习的方法通过固定提示或固定反馈循环来提示模型,而本文的工作将 LLM 视为能够自主规划和执行操作以通过调用合适的工具来修复错误的代理。RepairAgent 自由地交叉收集有关错误的信息、收集修复成分和验证修复,同时根据收集的信息和之前修复尝试的反馈来决定调用哪些工具。
2025-10-31 09:46:40
649
3
原创 InvAASTCluster:On Applying Invariant-Based Program Clustering to Introductory Programming Assignment
由于注册编程课程的学生数量庞大,专注于初级编程作业(IPA)的自动化程序修复技术也在不断增加。通常,这些技术使用程序聚类来利用之前正确的学生实现,以修复新的错误提交。之所以使用聚类方法,是因为分析所有可用的正确提交来修复程序不可行。然而,传统的聚类方法依赖于基于特征的程序表示,例如抽象语法树(AST)、语法、控制流和数据流。**本文提出了 InvAASTCluster,这是一种用于程序聚类的新方法,它使用动态生成的程序不变式来聚类语义等价的 IPA。
2025-10-23 15:52:41
673
2
原创 Hybrid Automated Program Repair by Combining Large Language Models and Program Analysis
自动化程序修复(APR)技术因有望为开发人员简化漏洞修复流程,已受到广泛关注。近年来,基于大型语言模型(LLM)的 APR 方法在修复真实世界漏洞方面展现出潜力。然而,现有 APR 方法往往直接使用 LLM 生成的补丁,未进行进一步优化,因缺乏程序特定知识导致效果受限。此外,这些 APR 方法的评估通常基于 “完美故障定位” 假设,而这一假设可能无法准确反映其在真实场景中的有效性。为解决这些局限性,本文提出一种创新的 APR 方法 ——GiantRepair。
2025-10-17 15:05:52
1067
4
原创 KAG: Boosting LLMs in Professional Domains via Knowledge Augmented Generation
KAG框架提出了一种知识增强生成方法,通过在RAG技术中集成知识图谱的语义推理能力,显著提升了专业领域问答的准确性。该框架采用语义图索引(结合稀疏符号与稠密向量)、语义解析与推理(将问题转化为逻辑形式)、语义检索三大模块,解决了传统RAG方法依赖相似度检索和共现生成的局限性。实验表明,KAG在多跳QA任务中优于现有RAG方法,并在电子政务场景中验证了其专业性能提升。该项目已开源,支持OpenSPG知识图谱引擎的集成应用。
2025-10-09 21:20:22
613
2
原创 Planning a Large Language Model for Static Detection of Runtime Errors in Code Snippets
本文摘要介绍了ORCA方法,该方法利用大语言模型预测代码执行路径并检测运行时错误。针对大语言模型在程序动态行为推理上的不足,ORCA通过控制流图(CFG)引导模型制定执行计划,在分支点暂停并更新符号表,减少误差传播。实验表明,ORCA在预测执行跟踪和静态检测运行时错误方面优于现有方法,为软件开发早期错误检测提供了有效工具。
2025-09-27 10:52:47
1020
6
原创 Measuring Code Behavioral Similarity for Programmingand Software Engineering Education
测量代码行为相似性用于编程和软件工程教育
2025-09-16 15:46:39
777
5
原创 Less is More : Adaptive Program Repair with Bug Localization and Preference Learning
本文提出了一种新颖的自适应程序修复方法AdaPatcher,旨在生成既正确又最小化修改的代码补丁。研究团队首先定义了AdaPR任务,强调在修复错误代码时保持代码一致性的重要性。该方法采用两阶段框架:第一阶段通过自调试学习和代码差异分析精确定位错误位置;第二阶段利用位置感知修复、选择性参考混合训练和自适应偏好学习来生成最小修改的补丁。实验结果表明,AdaPatcher在构建的ACPR数据集上显著优于现有基线,在保持修复准确性的同时提高了代码一致性。该研究为自动化程序修复领域提供了新思路,特别适用于需要最小化代
2025-09-11 15:32:05
1007
8
原创 AdverIntent-Agent: Adversarial Reasoning for Repair Based on Inferred Program Intent
自动程序修复 (APR) 已显示出有希望的结果,尤其是在使用神经网络的情况下。目前大多数 APR 工具都专注于指定测试用例的代码修复,而不是推理程序的意图和高级错误规范。如果不能正确理解程序意图,这些工具往往会生成补丁,这些补丁会过度拟合不完整的测试套件,并且无法反映开发人员的意图。但是对程序意图进行推理是具有挑战性的。在本文的工作中,提出了一种称为 AdverIntent-Agent 的方法,该方法基于批判和对抗性推理,可以将重点从生成多个 APR 补丁转移到推断多个潜在的程序意图。
2025-07-16 10:55:01
752
7
原创 Aligning the Objective of LLM-based Program Repair
本文提出D4C框架,通过目标对齐优化大语言模型(LLM)在自动程序修复(APR)中的应用。研究发现现有方法存在两个关键问题:1)解码器LLMs的预测目标与填充式修复方法不一致;2)传统错误定位-修复流程限制LLMs发挥预训练能力。D4C将修复任务重构为程序精炼问题,让LLMs直接生成完整函数而非局部补丁,并与训练目标对齐。实验表明,D4C在Defects4J数据集上修复180个缺陷,性能超越当前最佳方法10%,同时将补丁采样次数减少90%。
2025-07-06 20:40:08
708
8
原创 Enhancing the Efficiency of Automated Program Repairvia Greybox Analysis
在本文中,我们关注自动化程序修复(APR)的效率问题。最近,一种高效的补丁调度算法 CASINO 被提出以提升 APR 效率。受模糊测试(fuzzing)启发,CASINO 根据先前评估结果自适应地选择下一个待评估的补丁候选。然而,我们观察到 CASINO 仅利用了测试结果,将被修补的程序视为黑盒。受灰盒模糊测试(greybox fuzzing)启发,我们提出了一种新颖的补丁调度算法 GRESINO,它利用程序的内部状态来进一步提升 APR 效率。
2025-06-30 17:23:37
1048
3
原创 ThinkRepair: Self-Directed Automated Program Repair
本文提出ThinkRepair,一种基于大语言模型的自动程序修复方法。针对现有技术在逻辑错误修复上的不足,ThinkRepair采用两阶段框架:收集阶段通过思维链提示获取修复知识;修复阶段结合few-shot示例与测试反馈进行迭代修复。在Defects4J和QuixBugs数据集上的实验表明,ThinkRepair显著优于12种SOTA方法,在Defects4J V1.2上修复98个错误,比基线提升27%-344.4%,在V2.0版本多修复12-65个错误。
2025-06-17 17:32:55
1008
6
原创 符号执行与SemFix、DirectFix 、Angelix的主要思想
符号执行的核心是一种程序分析技术,起源于20世纪70年代中期,用于检查软件程序在所有可能的使用场景下是否满足特定属性。与传统测试不同,传统测试使用具体输入(如特定的数字或字符串)运行程序并观察其行为,符号执行将输入视为抽象符号。这些符号代表一系列可能的值,并使用约束求解器——如满足模理论(SMT)求解器来确定特定条件(如安全漏洞或bug)是否可以触发。假设你在测试一个程序,确保它没有绕过身份验证的后门。在具体执行中,你可能会使用随机输入进行测试,但如果后门只在非常特定的条件下激活,你可能会错过关键场景。
2025-06-03 10:52:20
964
9
原创 I-CON: A UNIFYING FRAMEWORK FOR REPRESENTATION LEARNING
随着表征学习领域的快速发展,各类损失函数层出不穷,用于解决不同类别的问题。本文提出了一种统一的信息论方程——信息对比学习框架(I-Con),可泛化机器学习中的多种现代损失函数。该框架表明,多个主要类别的机器学习方法本质上是在最小化两个条件分布(监督分布与学习到的表征分布)之间的积分KL散度。这一视角揭示了聚类、谱方法、降维、对比学习和监督学习等方法背后隐含的信息几何结构。通过该框架,我们不仅能建立超过23种不同方法之间的理论联系,还能结合文献中的成功技术设计新的损失函数。
2025-05-23 21:08:45
1101
8
原创 FastFixer: An Efficient and Effective Approach for Repairing Programming Assignments
为学生的编程作业提供个性化和及时的反馈对于编程教育至关重要。自动程序修复 (APR) 技术已被用于修复编程作业中的错误,其中基于大型语言模型 (LLM) 的方法已显示出可喜的结果。鉴于在高级编程作业中识别和修复错误的复杂性日益增加,当前 APR 的微调策略不足以指导 LLM 在生成修复过程中识别错误并进行准确编辑。此外,LLM 采用的自回归解码方法可能会阻碍修复的效率,从而阻碍提供及时反馈的能力。为了应对这些挑战,本文提出了 FastFixer,这是一种高效且有效的编程赋值修复方法。
2025-05-19 09:59:28
1223
10
原创 BRAFAR: Bidirectional Refactoring, Alignment, Fault Localization, and Repair...
从计算机科学到心理学等各类大学科目的编程教育需求显著增长。众多学生参加线下编程课程和大型开放式在线课程(MOOCs),这使得教师难以及时提供个性化反馈。有效的反馈对学习至关重要,但在大规模环境中完成这项任务变得不切实际。仅仅提供失败的测试用例或教师的解决方案作为反馈往往不足。为解决这一问题,研究人员探索了自动反馈生成方法,以提供更有针对性的反馈,帮助学生有效理解和解决编码问题。其中一条研究路线利用错误模型(手动构建或从数据中学习)来纠正学生的编程错误。然而,这些方法仍需要人工努力或修复率较低。
2025-05-06 15:14:50
1107
12
原创 AGENTLESS : Demystifying LLM-based Software Engineering Agents
提出了AGENTLESS——一种自动解决软件开发问题的无代理方法。AGENTLESS使用简单的定位、修复和补丁验证三阶段方法。与先前基于代理的方法相比,AGENTLESS故意不允许LLM用于自主工具使用或规划。通过对流行的SWE-bench Lite基准测试的评估表明,与其他开源技术相比,AGENTLESS可以实现最高的性能,同时最大限度地降低成本。此外,作者还对SWE-bench Lite中的问题进行了详细的分类,不仅可以提供新的见解,还可以在删除有问题的问题后构建更严格的SWE-bench Lite基准
2025-04-18 17:38:11
1099
原创 SWE-SEARCH: Enhancing Software Agents with Monte Carlo Tree Search and Iterative Refinement
软件工程师在复杂多变的环境中工作,需要不断适应需求变化、从经验中迭代学习,并基于新见解重新考虑方法。然而当前基于大型语言模型(LLM)的软件代理通常遵循线性、顺序的流程,无法回溯或探索替代解决方案,限制了其在初始方法无效时重新思考策略的能力。为了解决这些挑战,本文提出了SWE-Search,这是一种多代理框架,将蒙特卡洛树搜索(MCTS)与自我改进机制相结合,以提升软件代理在仓库级软件任务上的性能。SWE-Search通过扩展传统的MCTS,引入了混合值函数,利用LLM进行数值估计和定性评估。
2025-04-13 19:58:33
1222
原创 Variable-based Fault Localization via Enhanced Decision Tree
本文提出的方法(命名为 VarDT)的基本思想是利用变量值在失败和通过的测试运行中的差异来区分它们,具有更高区分能力的变量更有可能是故障的根本原因。VarDT 的工作流程包括两个阶段:首先,收集失败和通过测试运行中某些程序检查点的变量值;然后,使用这些变量构建决策树模型以区分失败和通过的测试运行,并识别出用于构建分支条件(即约束条件)的故障相关变量,因为这些变量能够区分失败和通过的测试。
2025-03-30 19:26:55
465
原创 VideoRAG: Retrieval-Augmented Generation with Extreme Long-Context Videos
检索增强生成(RAG)在通过外部知识集成增强大语言模型(LLM)方面取得了显著的成功,但其应用主要集中在文本内容上,而多模态视频知识的丰富领域则主要未被探索。本文介绍了 VideoRAG,这是第一个专门用于处理和理解超长上下文视频的检索增强生成框架。本文的核心创新在于其双通道架构,该架构无缝集成了 (i)基于图的文本知识对齐,用于捕获跨视频语义关系,以及(ii)多模态上下文编码,用于有效保留视觉特征。
2025-03-15 18:08:09
1572
原创 LGS-KT: Integrating logical and grammatical skills for effective programming knowledge tracing
知识追踪(KT)通过分析学生的历史互动来估计他们对知识概念或技能的掌握情况。虽然一般的KT方法已经有效地评估了学生的知识状态,但对学生编程技能的具体评估仍然不足。现有研究主要依赖于练习结果,没有充分利用在编程过程中的行为数据。因此,本文作者提出了一个逻辑和语法技能知识追踪模型(Logical and Grammar Skills Knowledge Tracing, LGS-KT)来提高编程教育领域的知识追踪表现。该模型集成了静态分析和动态监控(如CPU和内存消耗)来评估代码的质量。
2025-02-25 16:47:42
1165
原创 The Surprising Effectiveness of Test-Time Training for Abstract Reasoning
JokerLin 语言模型在其训练分布中的任务上表现出令人印象深刻的性能,但经常难以解决需要复杂推理的新问题。本文以 ARC 为基准,研究了测试时训练 (Test-Time Training,TTT) 的有效性——在推理过程中使用从输入数据得出的损失临时更新模型参数——作为提高模型推理能力的机制。通过系统实验,确定了成功 TTT 的三个关键组成部分:(1)对类似任务进行初始微调 (2)辅助任务格式和增强 (3)逐个实例训练。
2025-01-22 21:14:37
538
原创 Mining Idioms from Source Code
提出了第一种从语料库中自动挖掘代码惯用语的方法提出了一个基于非参数贝叶斯概率树替换算法的系统HAGGIS用于挖掘代码习语;通过实验证明了挖掘出的习语是有意义的并且在软件项目中重复出现。编程语言文本是人类交流的一种手段。程序员编写代码不仅仅是为了让计算机执行,还要向后来的开发人员传达代码操作的精确细节,让他们适应、更新、测试和维护代码;本文认为习语是在软件项目中频繁出现的代码片段,并且具有单一的语义性;习语可能具有抽象标识符名称和代码块的元变量;
2025-01-14 20:22:38
1147
原创 LightRAG: Simple and Fast Retrieval-Augmented Generation
检索-增强生成(Retrieval- Augmented Generation, RAG)系统通过整合外部知识源来增强大语言模型(Large Language Model, LLM),从而根据用户需求定制更准确、更符合情境的响应。然而,现有的RAG系统具有很大的局限性,包括扁平的数据表示和不充分的上下文感知,这可能导致碎片化的答案,无法捕获复杂的相互依赖关系。为了应对这些挑战,本文提出了LightRAG,它将图结构融入到文本索引和检索过程中。
2024-12-26 16:34:06
1563
原创 TRACED: Execution-aware Pre-training for Source Code
大多数现有的用于源代码的预训练语言模型集中于学习静态代码文本,或用静态代码结构(抽象语法树、依赖关系图等)来增强。然而,在程序真正执行之前不会完全暴露语义信息。即在不理解程序执行的情况下,静态预训练模型无法全面捕获动态代码属性,例如分支覆盖和运行时变量值,也就影响了它们在代码理解任务(例如检索语义克隆和检测软件漏洞)中的效率。因此,为了弥合语言模型的静态性质和程序的动态特性之间的差距,本文作者引入了TRACED,一种执行感知的源代码预训练策略。
2024-12-20 14:35:08
1104
原创 Multivariate time series classification with crucial timestamps guidance
基于 Transformer 的深度学习方法极大地促进了多元时间序列分类(MTSC)任务。然而,由于自注意力机制的固有操作,大多数现有方法往往忽视时间序列的内部局部特征和时间不变性,可能导致对模型内表示和上下文信息的理解有限。与全局特征相比,局部特征表现出更大的特异性和细节,从而更有利于捕获时间序列的本质纹理信息和局部结构。为了改善这些问题,我们提出了 CTNet,这是一种通过重建关键时间戳来增强时间序列表示学习的新型网络,旨在提高解决 MTSC 任务的能力。
2024-12-08 18:53:57
1481
原创 CC2Vec: Combining Typed Tokens with Contrastive Learning for Effective Code Clone Detection
随着开源社区的发展,代码的复制、传播和演化为软件系统带来了不确定性和风险(如漏洞传播、版权侵权)。现有基于 Token 的工具尽管能扩展到大规模代码,但无法很好地处理语义代码克隆问题。论文提出了一种新颖的代码编码方法 CC2Vec,通过结合 Typed Tokens 和 对比学习,能够高效检测简单代码克隆,同时增强对复杂语义代码克隆的检测能力。CC2Vec 采用双层自注意力机制对代码的 Typed Tokens 编码,并通过对比学习减小不同代码实现之间的差异,在 BigCloneBench 和 Google
2024-11-30 18:29:29
1051
原创 多模态基础模型:从专家到通用助手
随着模型(例如 BERT、GPT 家族、CLIP(Radford et al., 2021)和 DALL-E(Ramesh et al., 2021a))的兴起,人工智能一直在经历范式转变,这些模型基于可以适应广泛下游任务的广泛数据进行训练。他们称这些模型为基础模型,以强调其关键的核心但不完整的特征:研究界方法的同质化和新功能的出现。
2024-11-17 18:12:39
1304
原创 MTL-TRANSFER
本文提出了一种基于多任务学习策略的语义特征提取方法 MTL-TRANSFER,并在广泛使用的基准测试 Defects4J 进行的大量实验表明,MTL-TRANSFER 在 FL 和 APR 任务中的性能优于所有基准测试,证明了该方法的有效性。
2024-11-03 20:54:00
1179
原创 SLACC Simion-based Language Agnostic Code Clones
跨语言克隆检测技术可以使研究人员和开发人员创建健壮的语言迁移工具,在精通一门编程语言的时候快速学习更多的编程语言。跨语言克隆检测面临着没有共同底层表示的挑战。为了解决这个问题,可以采用两种方法:静态分析框架(通过匹配不同语言的代码结构和特性)或动态分析框架(通过比较代码的运行时行为)。本文提出一种跨语言克隆检测的动态分析方法——SLACC,使用输入/输出匹配克隆,通过增加输入的数量及涵盖更多的数据类型来克服之前的工作的局限性,检测到更多的的相似代码片段,生成更好的代码集群(clusters)。
2024-10-20 19:43:18
1190
1
原创 Informer: Beyond Efficient Transformer for Long SequenceTime-Series Forecasting
许多实际应用需要预测长序列时间序列,例如用电量规划。长序列时间序列预测 (LSTF) 要求模型具有很高的预测能力,即能够有效地捕获输出和输入之间的精确长程依赖耦合。最近的研究表明,Transformer 有可能提高预测能力。但是,Transformer 存在几个严重问题,使其无法直接应用于 LSTF,包括二次时间复杂度、高内存使用率和编码器-解码器架构的固有限制。
2024-10-13 19:26:06
1786
原创 Gated Transformer Networks for Multivariate Time Series Classification
用于时间序列分类的深度学习模型(主要是卷积网络和 LSTM)已被社区广泛研究,并在医疗保健、金融、工业工程和物联网等不同领域得到广泛应用。与此同时,Transformer Networks 最近在各种自然语言处理和计算机视觉任务上取得了前沿性能。在这项工作中,我们探索了当前带有门控的Transformer Networks的简单扩展,称为门控Transformer网络(GTN),用于解决多元时间序列分类问题。
2024-10-08 18:23:44
2051
原创 PST: Measuring Skill Proficiency in Programming Exercise Process via Programming Skill Tracing
编程已经成为当今个人的一项重要技能。对于提高个人编程技能的需求,跟踪编程技能熟练程度变得越来越重要。然而,很少有研究者关注评估学习者的编程技能。现有的关于学习者能力画像的研究大多只利用练习结果,而忽略了编程练习过程中包含的丰富行为信息。因此,本文提出了一个模型来衡量编程练习过程中的技能熟练程度,称为编程技能跟踪(PST)。具体而言,本文作者设计了代码信息图(Code Information Graph,CIG)来表示学习者解决方案代码(solution code)
2024-09-25 16:06:25
881
原创 STaR: Bootstrapping Reasoning With Reasoning
生成逐步的“思维链”逻辑依据(rationale)可以提高语言模型在数学或常识问答等复杂推理任务上的性能。然而,诱导语言模型进行逻辑依据生成需要构建大量逻辑依据数据集,或者仅使用few-shot推理来牺牲准确性。本文提出了一种技术来迭代地利用少量的逻辑依据示例和没有逻辑依据的大型数据集,以引导连续执行更复杂的推理的能力。这种技术称为“自学推理机”(STaR):生成回答许多问题的逻辑依据,并用一些逻辑依据示例进行提示;如果生成的答案是错误的,在给出正确答案的情况下再次尝试生成理由,并利用上述数据进行微调。
2024-09-22 10:57:47
1598
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅