five

FPEval

收藏
github2026-01-22 更新2026-01-23 收录
下载链接:
https://github.com/thanhlecongg/FPEval
下载链接
链接失效反馈
官方服务:
资源简介:
FPEval是一个用于功能编程中代码生成的全面评估框架,包含FPBench基准、评估基础设施和调用大型语言模型的包装器。

FPEval is a comprehensive evaluation framework for code generation in functional programming, comprising the FPBench benchmark, evaluation infrastructure, and wrappers for invoking Large Language Models (LLMs).
创建时间:
2025-12-30
原始信息汇总

FPEval 数据集概述

数据集基本信息

  • 数据集名称: FPEval
  • 核心内容: 用于函数式编程代码生成的综合评估框架,包含其FPBench基准测试、评估基础设施以及用于调用大语言模型(LLM)的封装工具。
  • 数据集版本: v1.0
  • 存储位置: https://huggingface.co/FPEvalRepoPublic
  • 相关论文: 《Perish or Flourish? A Holistic Evaluation of Large Language Models for Code Generation in Functional Programming》

数据集构成与用途

  • 主要功能: 评估大语言模型在函数式编程语言中的代码生成能力。
  • 核心组件:
    1. FPBench基准测试: 用于评估的基准数据集。
    2. 评估基础设施: 执行评估的框架和工具。
    3. LLM调用封装: 用于连接和调用不同大语言模型的接口。

支持的技术环境

  • 支持的编程语言: Haskell (ghc 9.4.8), OCaml (4.08.1), Scala (2.11.12),以及Python (3.10.16), Java (11.0.26), sbt (1.10.11)。
  • 支持的操作系统: Ubuntu 20.04.4。
  • 计划支持的大语言模型系列: OpenAI系列(GPT-3.5, GPT-4o)、DeepSeek系列、Claude系列、CodeQwen系列、CodeLLama系列、Mixtral系列。

使用方法

  • 主要脚本: run_dataset.py,用于为数据集生成代码并进行基准测试。
  • 关键参数:
    • --language: 目标编程语言,默认为haskell,可选haskellocamlscala
    • --workflow: LLM智能体工作流程,默认为basic,可选basicself-repairinstruction-repaircode-execution
    • --model_name: 基础LLM模型,默认为gpt-3.5-turbo,支持gpt-3.5-turbogpt-4ogpt-5
    • --repo_id: HuggingFace仓库ID,默认为"LLMFP/LeetCodeProble"
  • 运行流程: 脚本会自动从指定的HuggingFace仓库下载数据集(缓存于本地./huggingface_cache),并为数据集中的所有文件生成代码。

安装与部署

  • 安装方式: 提供手动安装和使用Docker两种方式。
  • Docker镜像: 可自行构建(llm4fp)或从Docker Hub拉取(erlang123/llm4fp:v4)。
  • 环境配置: 需通过.env文件设置环境变量(主要是访问各类LLM所需的API密钥)。
搜集汇总
数据集介绍
main_image_url
构建方式
在函数式编程领域,代码生成能力的评估需要严谨的基准测试。FPEval数据集的构建依托于其核心组件FPBench,该基准测试集精心设计了涵盖函数式编程典型范式的编程问题。构建过程涉及从开源社区及学术资源中筛选具有代表性的题目,并确保其在Haskell、OCaml和Scala等多种函数式语言中的可表达性。每个问题均配备了清晰的规范描述与测试用例,为后续的自动化评估奠定了坚实基础。
使用方法
研究人员可通过提供的Python脚本便捷地使用该数据集。核心脚本`run_dataset.py`能够从HuggingFace平台自动下载数据集,并支持用户指定目标编程语言、评估工作流以及所使用的基础模型。通过配置相应的环境变量与API密钥,用户可启动完整的评估流程,生成的代码结果将自动保存至指定路径,便于进行后续的详细分析与比较。
背景与挑战
背景概述
在程序语言理论与人工智能交叉领域,代码生成任务逐渐从命令式范式扩展至函数式编程。FPEval数据集由Nguyet-Anh H. Lang、Eric Lang、Thanh Le-Cong等研究人员于2026年构建,旨在系统评估大型语言模型在函数式编程语境下的代码生成能力。该数据集以FPBench为核心基准,覆盖Haskell、OCaml、Scala等多种函数式语言,致力于探索模型在纯函数、不可变数据及高阶抽象等核心概念上的表现。其研究不仅填补了现有基准在函数式编程评估上的空白,也为程序合成与形式化方法领域提供了新的分析维度。
当前挑战
函数式编程代码生成面临独特挑战,其强类型系统、惰性求值及递归范式要求模型具备深层次的逻辑推理与类型推导能力。FPEval需解决模型在生成类型安全、无副作用代码时的准确性难题,同时应对函数式语言中模式匹配、代数数据类型等复杂结构的表达问题。在构建过程中,数据集需平衡多语言支持的实现复杂度,确保Haskell、OCaml等语言运行环境的精确配置,并设计可复现的评估流程以兼容多样化的LLM工作流,如自修复与代码执行验证。
常用场景
经典使用场景
在函数式编程领域,代码生成任务对大型语言模型的评估提出了独特挑战。FPEval数据集通过其FPBench基准测试,为研究者提供了一个全面的评估框架,专门用于测试模型在Haskell、OCaml和Scala等函数式语言中的代码生成能力。该数据集通常被用于执行端到端的代码生成实验,结合多种工作流程如基础生成、自我修复和指令修复,以系统性地衡量模型在函数式编程范式下的表现。
解决学术问题
该数据集致力于解决函数式编程代码生成中缺乏标准化评估基准的学术难题。它通过构建多语言、多难度的编程问题集合,使研究者能够量化比较不同大型语言模型在函数式编程特性如不可变性、高阶函数和惰性求值等方面的理解与实现能力。其意义在于推动了代码生成研究从过程式语言向函数式范式的扩展,为模型在复杂编程场景下的评估提供了可靠依据。
实际应用
在实际应用中,FPEval数据集可被集成到持续集成管道中,用于自动化测试和验证大型语言模型生成的函数式代码的正确性与效率。教育机构可利用该数据集开发智能编程辅导系统,帮助学生掌握函数式编程概念。工业界则能借助其评估模型在生成领域特定语言或函数式库代码时的实用性,从而优化软件开发工具链。
数据集最近研究
最新研究方向
在函数式编程代码生成领域,FPEval数据集正推动着大语言模型评估框架的深度演进。其前沿研究聚焦于构建多语言、多模型的综合性评测体系,通过集成Haskell、OCaml、Scala等函数式语言,系统考察模型在复杂逻辑表达与类型安全约束下的代码生成能力。当前热点围绕自修复、指令修复与代码执行等智能体工作流展开,旨在提升模型在真实编程场景中的鲁棒性与实用性。这一进展不仅为函数式编程的自动化工具开发提供了基准,也促进了编程语言理论与人工智能技术的交叉融合,对推动软件工程智能化发展具有深远意义。
以上内容由遇见数据集搜集并总结生成
5,000+
优质数据集
54 个
任务类型
进入经典数据集
二维码
社区交流群

面向社区/商业的数据集话题

二维码
科研交流群

面向高校/科研机构的开源数据集话题

数据驱动未来

携手共赢发展

商业合作