python+ollama+llama3.1实现文字描述生成完整网站项目源码代码

代码语言:python

所属分类:其他

代码描述:python+ollama+llama3.1实现文字描述生成完整网站项目源码代码,根据文字描述生成每个页面的信息,然后批量生成每个网页的html源码保存到项目目录。

代码标签: python ollama llama 文字 描述 生成 完整 网站 项目 源码 代码

下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开

import ollama
import json
import os



def safe_json_loads(json_str):
    """
    安全地解析 JSON 字符串,并捕获可能的异常。

    参数:
    json_str (str): 要解析的 JSON 字符串。

    返回:
    dict: 解析成功后的 Python 字典。
    None: 如果解析失败,返回 None。
    """
    try:
        data = json.loads(json_str)
        return data
    except json.JSONDecodeError as e:
        print("JSON 解析错误:", e)
    except TypeError as e:
        print("类型错误:", e)
    except ValueError as e:
        print("值错误:", e)
    except Exception as e:
        print("其他错误:", e)
    
    return None


def create_file_in_subdirectory(filename, content, subdirectory='sites'):

    # 获取当前目录
    current_dir = os.getcwd()
    
    # 构建子目录的完整路径
    subdir_path = os.path.join(current_dir, subdirectory)
    
    # 如果子目录不存在,则创建它
    if not os.path.exists(subdir_path):
        os.makedirs(subdir_path)
    
    # 构建文件的完整路径
    file_path = os.path.join(subdir_path, filename)
    
    # 写入文件内容
    with open(file_path, 'w',encoding="utf-8") as file:
        file.write(content)
    
    print(f"文件 '{filename}' 已成功创建在子目录 '{subdirectory}' 下。")


def ollama_api_json(prompt,userquery):
    response = ollama.chat(
        model="llama3.1",
        format="json",
        
        messages=[
            {
                "role": "system",
                "content": prompt,
            },
            {
                "role": "user",
                "content": userquery,
            },
        ],
    )

    print(response["message"]["content"])
    return safe_json_loads(response["message"]["content"])




mainprompt1="""你是一个专业的网站开发助手,你的任务#根据网站功能需求进行优化后列出网站的所有页面列表#页面列表包含文件名和详细的内容描述,并通过json数组返回给用户,##不要在json数组外加入其它内容和解释#输出的json数组示例格式{"pages": [
  {&.........完整代码请登录后点击上方下载按钮下载查看

网友评论0