Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
学习智者
神经网络(初步,可自我修复)
提交
f288f8c6
神
神经网络(初步,可自我修复)
项目概览
学习智者
/
神经网络(初步,可自我修复)
与 Fork 源项目一致
Fork自
inscode / Python
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
神
神经网络(初步,可自我修复)
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
f288f8c6
编写于
4月 10, 2025
作者:
2
2301_77161129
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Thu Apr 10 12:45:00 CST 2025 inscode
上级
e590fef4
变更
1
显示空白变更内容
内联
并排
Showing
1 changed file
with
32 addition
and
49 deletion
+32
-49
main.py
main.py
+32
-49
未找到文件。
main.py
浏览文件 @
f288f8c6
import
torch
from
flask
import
Flask
,
request
,
jsonify
import
logging
import
requests
from
datetime
import
datetime
app
=
Flask
(
__name__
)
# 初始化配置和标识
genes
=
{
'minsize'
:
3072
,
'target_mod'
:
'site'
,
'cnt'
:
0
,
'memory'
:
[]}
CSDN_API_URL
=
"https://g.csdnimg.cn/??lib/jquery/1.12.4/jquery.min.js"
mark
=
f
"#####MyPython####_
{
datetime
.
now
().
strftime
(
'%Y%m%d%H%M'
)
}
"
CSDN_API_KEY
=
"sk-pdcbucazcpktrpywbhoafyjvybwiogrrworwsuvbfryxv"
# 配置日志
@
app
.
route
(
'/ai'
,
methods
=
[
'POST'
])
logging
.
basicConfig
(
filename
=
f
'
{
mark
}
.log'
,
level
=
logging
.
INFO
)
def
ai_generate
():
user_input
=
request
.
json
.
get
(
'prompt'
)
class
SiteModel
(
torch
.
nn
.
Module
):
if
not
user_input
:
def
__init__
(
self
):
return
jsonify
({
"error"
:
"缺少输入"
}),
400
super
().
__init__
()
self
.
fc
=
torch
.
nn
.
Linear
(
3072
,
10
)
# 假设输入维度 3072
# 调用 CSDN 的 AI 模型
try
:
def
forward
(
self
,
x
):
response
=
requests
.
post
(
return
self
.
fc
(
x
)
CSDN_API_URL
,
headers
=
{
def
train
(
genes
,
mark
):
"Content-Type"
:
"application/json"
,
model
=
SiteModel
()
"Authorization"
:
f
"Bearer
{
sk
-
pdcbucazcpktrpywbhoafyjvybwiogrrworwsuvbfryxv
}
"
optimizer
=
torch
.
optim
.
Adam
(
model
.
parameters
())
},
criterion
=
torch
.
nn
.
CrossEntropyLoss
()
json
=
{
"prompt"
:
user_input
}
)
# 模拟数据(实际需替换为 DataLoader)
response
.
raise_for_status
()
inputs
=
torch
.
randn
(
10
,
3072
)
# 10 个样本
result
=
response
.
json
().
get
(
"result"
,
"无法生成内容"
)
labels
=
torch
.
randint
(
0
,
10
,
(
10
,))
return
jsonify
({
"result"
:
result
})
except
Exception
as
e
:
for
epoch
in
range
(
5
):
return
jsonify
({
"error"
:
str
(
e
)}),
500
optimizer
.
zero_grad
()
outputs
=
model
(
inputs
)
if
__name__
==
'__main__'
:
loss
=
criterion
(
outputs
,
labels
)
app
.
run
(
debug
=
True
)
loss
.
backward
()
optimizer
.
step
()
# 更新状态
genes
[
'cnt'
]
+=
1
genes
[
'memory'
].
append
(
loss
.
item
())
logging
.
info
(
f
"Epoch
{
epoch
}
, Loss:
{
loss
.
item
():.
4
f
}
"
)
# 保存模型和配置
torch
.
save
({
'model_state'
:
model
.
state_dict
(),
'genes'
:
genes
},
f
"
{
mark
}
_checkpoint.pth"
)
if
__name__
==
"__main__"
:
train
(
genes
,
mark
)
print
(
f
"Training completed! Check
{
mark
}
_*.log and
{
mark
}
_*.pth"
)
\ No newline at end of file
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录