当前位置: 首页 > wzjs >正文

产品展示网站模板下载html网站设计实例代码

产品展示网站模板下载,html网站设计实例代码,广西网站建设哪家好,广州百度网站排名优化环境: Ubuntu20.04 问题描述: 如何统一从一个共享的配置文件(比如 config.yaml 和 config.py)加载配置信息,避免硬编码? 解决方案: 希望本地模型和线上模型两块代码完全分开,但它们都统一从…

环境:

Ubuntu20.04

问题描述:

如何统一从一个共享的配置文件(比如 config.yaml 和 config.py)加载配置信息,避免硬编码?

在这里插入图片描述

解决方案:

希望本地模型和线上模型两块代码完全分开,但它们都统一从一个**共享的配置文件(比如 config.yamlconfig.py)**加载配置信息,避免硬编码。

提供三份文件示范:

  • config/config.yaml:统一配置文件
  • config/config.py:统一读取配置并做环境变量覆盖
  • local_model.py:独立文件,调用本地模型,配置从config读取
  • online_model.py:独立文件,调用线上模型,配置从config读取

1. core/server/config/config.yaml

# 线上模型配置
api_key: "d3112f3e479"
base_url: "https://ark.cn-beijing.volces.com/api/v3"
model_name: "ep-20250602174215-fw5hx"# 本地模型配置
local_model_api: "http://192.168.1.9:11434/v1/chat/completions"
local_model_name: "qwen2.5-3bnsfwny"
local_model_max_tokens: 512
local_model_temperature: 0.25
local_model_timeout: 10

2. core/server/config/config.py

import os
import yamlCONFIG_PATH = os.path.join(os.path.dirname(__file__), "config.yaml")class Config:def __init__(self):with open(CONFIG_PATH, "r", encoding="utf-8") as f:data = yaml.safe_load(f)for k, v in data.items():env_val = os.getenv(k.upper())setattr(self, k, env_val if env_val is not None else v)config = Config()

3. local_model.py

import requests
from loguru import logger
from typing import Optional
import timefrom core.server.config.config import config  # 根据你的实际包结构调整导入路径def summarize_with_model(text: str) -> Optional[str]:headers = {"Content-Type": "application/json"}payload = {"model": config.local_model_name,"messages": [{"role": "user", "content": text}],"max_tokens": int(config.local_model_max_tokens),"temperature": float(config.local_model_temperature),"stream": False}try:logger.info("调用本地大模型接口,准备发送请求")start_time = time.time()r = requests.post(config.local_model_api, headers=headers, json=payload, timeout=int(config.local_model_timeout))r.raise_for_status()logger.info(f"接口响应状态码:{r.status_code},耗时:{time.time() - start_time:.2f}秒")resp_json = r.json()content = resp_json.get("choices", [{}])[0].get("message", {}).get("content")logger.info(f"模型返回内容长度:{len(content) if content else 0}")logger.info(f"模型返回具体内容:{content}")return contentexcept requests.exceptions.Timeout:logger.error("调用本地大模型失败: 请求超时")return Noneexcept Exception as e:logger.error(f"调用本地大模型失败: {e}")return Noneif __name__ == "__main__":test_text = "请帮我总结一下这段文字的内容。"logger.info("=== 测试本地模型 ===")result = summarize_with_model(test_text)logger.info(f"本地模型返回结果:{result}")

4. online_model.py

from openai import OpenAI
from loguru import logger
from typing import Optionalfrom core.server.config.config import config  # 根据你的实际包结构调整导入路径client = OpenAI(api_key=config.api_key,base_url=config.base_url,
)def summarize_with_model(text: str) -> Optional[str]:try:logger.info("调用线上DeepSeek模型接口,准备发送请求")messages = [{"role": "system", "content": ""},{"role": "user", "content": text},]completion = client.chat.completions.create(model=config.model_name,messages=messages,stream=False)content = completion.choices[0].message.contentlogger.info(f"线上模型返回内容长度:{len(content) if content else 0}")logger.info(f"线上模型返回内容:{content}")return contentexcept Exception as e:logger.error(f"调用线上模型失败: {e}")return Noneif __name__ == "__main__":test_text = "请帮我总结一下这段文字的内容。"logger.info("=== 测试线上模型 ===")result = summarize_with_model(test_text)logger.info(f"线上模型返回结果:{result}")

5. 包结构示例及运行说明

core\server\config\__init__.pyconfig.pyconfig.yamlmodules\llm\__init__.pylocal_model.pyonline_model.py
  • configmodulesllm目录都加空的 __init__.py,使其成为包。
  • 在项目根目录执行:
python -m core.server.modules.llm.local_model
python -m core.server.modules.llm.online_model

确保Python可以正确解析包路径。


6. 说明

  • 配置集中统一,方便维护,避免魔法数字和字符串散落代码。
  • 代码完全分开,互不影响,且都共享同一配置,便于管理。
  • 方便后续增加环境变量覆盖或动态配置读取。

http://www.dtcms.com/wzjs/551899.html

相关文章:

  • 广州站国外做名片网站
  • 网站与域名的关系专业建设标准
  • 文章网站模板校园论坛网站源码
  • 爱站网做网站吗山姆超市网上购物网
  • 郑州网站建设开拓者网页界面设计实训报告
  • 28网站建设免费做店招哪个网站好
  • 外贸网站建设需要什么广州网站制作哪家公司好
  • seo网站布局建设厅网站ca验证失败
  • 无极修仙网站wordpress绝对连接换成相对链接
  • 网站描述代码怎么写做网站PPPOE网络可以吗
  • 怎么在网站上投放广告wordpress初学
  • vr技术对网站建设有哪些影响辽宁网站建设的网络科技公司
  • 车床加工东莞网站建设南京网站高端
  • 重庆网站建设慕枫如何看网站是否有做网站地图
  • 个人网站备案不能盈利wordpress模板主题
  • 洛阳东翔科技做的网站seo 工具推荐
  • 网站建设不完整dreamware做网站首页
  • 孙红雷做的二手车网站郑州网页网站制作
  • 公司域名让做网站的施工企业突发环境事件应急预案
  • 怎么做网站和注册域名三明商城网站开发设计
  • 网站做响应式还是移动端园区网站建设目的
  • 设计资源网站大推荐南京制作网页培训机构
  • 网站媒体作风建设年工作总结景区电子商务网站建设
  • 仿站 做网站建设彩票网站需要哪些要求
  • 安平县建设局网站手机设置管理网站首页
  • 北京大龙建设集团有限公司网站首页网络设计的目的是
  • 公司网站主页设计wordpress 即时预约
  • 织梦新闻门户网站模板 原创精品网站模板源码
  • 制作手机网站用什么软件村网站开设两学一做栏目
  • 长春电商网站建设常熟东南开发区人才网