feat: LangGraph工作流核心 — Agent状态/节点/图 + 验证服务 + 知识库
agent/ state.py: AgentState TypedDict(20字段含意图/压缩/会话/撤销) nodes.py: 17个节点函数(生成/修改/验证/纠错/意图分类/压缩/撤销/重置) graph.py: 17节点状态图,8意图路由分发 验证服务 validation_service/ main.py: FastAPI服务,lxml XSD验证 + 结构化检查(字段引用/SQL/尺寸) 数据 data/ sample_templates/: 4个JRXML示例模板 corrections/: 3个错误修正案例 脚本 scripts/ init_kb.py: Chroma知识库初始化
This commit is contained in:
@@ -0,0 +1,69 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd"
|
||||
name="EmployeeRoster" pageWidth="595" pageHeight="842" columnWidth="555"
|
||||
leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20">
|
||||
<queryString>
|
||||
<![CDATA[SELECT emp_id, emp_name, department, hire_date FROM employees ORDER BY department, emp_name]]>
|
||||
</queryString>
|
||||
<field name="emp_id" class="java.lang.Integer"/>
|
||||
<field name="emp_name" class="java.lang.String"/>
|
||||
<field name="department" class="java.lang.String"/>
|
||||
<field name="hire_date" class="java.sql.Date"/>
|
||||
<title>
|
||||
<band height="50">
|
||||
<staticText>
|
||||
<reportElement x="0" y="10" width="555" height="30"/>
|
||||
<textElement textAlignment="Center">
|
||||
<font size="16" isBold="true"/>
|
||||
</textElement>
|
||||
<text><![CDATA[Employee Roster]]></text>
|
||||
</staticText>
|
||||
</band>
|
||||
</title>
|
||||
<columnHeader>
|
||||
<band height="25">
|
||||
<staticText>
|
||||
<reportElement x="0" y="0" width="80" height="20"/>
|
||||
<textElement><font isBold="true"/></textElement>
|
||||
<text><![CDATA[ID]]></text>
|
||||
</staticText>
|
||||
<staticText>
|
||||
<reportElement x="90" y="0" width="180" height="20"/>
|
||||
<textElement><font isBold="true"/></textElement>
|
||||
<text><![CDATA[Name]]></text>
|
||||
</staticText>
|
||||
<staticText>
|
||||
<reportElement x="280" y="0" width="150" height="20"/>
|
||||
<textElement><font isBold="true"/></textElement>
|
||||
<text><![CDATA[Department]]></text>
|
||||
</staticText>
|
||||
<staticText>
|
||||
<reportElement x="440" y="0" width="115" height="20"/>
|
||||
<textElement><font isBold="true"/></textElement>
|
||||
<text><![CDATA[Hire Date]]></text>
|
||||
</staticText>
|
||||
</band>
|
||||
</columnHeader>
|
||||
<detail>
|
||||
<band height="20">
|
||||
<textField>
|
||||
<reportElement x="0" y="0" width="80" height="20"/>
|
||||
<textFieldExpression><![CDATA[$F{emp_id}]]></textFieldExpression>
|
||||
</textField>
|
||||
<textField>
|
||||
<reportElement x="90" y="0" width="180" height="20"/>
|
||||
<textFieldExpression><![CDATA[$F{emp_name}]]></textFieldExpression>
|
||||
</textField>
|
||||
<textField>
|
||||
<reportElement x="280" y="0" width="150" height="20"/>
|
||||
<textFieldExpression><![CDATA[$F{department}]]></textFieldExpression>
|
||||
</textField>
|
||||
<textField>
|
||||
<reportElement x="440" y="0" width="115" height="20"/>
|
||||
<textFieldExpression><![CDATA[$F{hire_date}]]></textFieldExpression>
|
||||
</textField>
|
||||
</band>
|
||||
</detail>
|
||||
</jasperReport>
|
||||
Reference in New Issue
Block a user