pycasso

2025-12-11 0 250

pycasso

通过Raspberry Pi单元将AI生成的AIT的系统发送到电子纸显示

一篇文章已在此处发表有关pycasso开发的文章。

yee-ha。

致谢

该项目的灵感基于汤姆·惠特威尔(Tom Whitwell)的慢景和非常有用的文章,可在https://debugger.me*d**ium.com/how-to-build-a-ver-ver-ver-movie-movie-movie-player-in-2020-c5745052e4e4上提供,以与raspberry pi单位合作。由于相似之处,我还可以自由地重复使用该项目的许多install.sh脚本。我还要感谢Robweber,他不仅创建了我实施的Omni-EPD,以便可以动态地与许多显示器一起使用,而且还为我提供了很多很好的代码示例,我经常回到这些示例,以确保我遵循最佳实践。

使用稳定性-SDK与稳定扩散的API相互作用。

使用Openai-Python与Dall-E的API互动。

设置

准备好覆盆子Pi

  • 从https://www.rasp*b*e*rrypi.com/software/operating-systems/安装Raspberry Pi OS。闪烁SD卡时,请确保您设置无线详细信息以便于访问,否则您必须遵循插入屏幕的配置步骤。将SD卡放入Raspberry Pi单元中

(可选)插入Pijuice帽子

  • 如果使用,请将Pijuice帽子连接到Raspberry Pi上。有关更多信息,请参见Pijuice文档。如果您不想使用Pijuice,您可以随时执行此操作。

将EPD连接到PI

  • 按照供应商的说明,小心地将EPD插入Raspberry Pi或Pijuice帽子的顶部。 pycasso实现了Omni-EPD,并应与此页面上列出的任何EPD一起工作:https://github.com/robweber/omni-epd/blob/main/main/main/readme.md。
  • 完成后将电源直接连接到Raspberry Pi(或Pijuice单元)。

安装pycasso

  • SSH进入Raspberry Pi单元,或插头监视器和键盘。
  • (可选)运行sudo apt-get更新和sudo apt-get升级到更新系统
  • 运行以下代码以在您的主目录中安装pycasso :
bash <(curl https://raw.githu*buserconte*n*t.com/jezs00/pycasso/main/setup.sh)
  • 注意提议的安装目录
  • 请注意,此安装程序有很多选项。请参阅Bash安装,以查找有关每个菜单项的更多信息。以下说明仅建议从头开始安装。
  • 选择选项1-安装/升级pycasso
  • 如果您想做的话,请选择“是”以启用启动服务(这可能是您想做的)
  • (可选)如果您想使用Pijuice,请选择“是”安装Pijuice
  • (可选)选择选项5-应用GRPCIO修复程序(在Raspberry Pi上存在GLIBC的问题,并且由稳定的扩散软件包安装。这可以修复它,并且似乎不会破坏稳定的扩散。您可能必须这样做。)
    • 如果这不起作用,请尝试选项6-应用GRPCIO更新。 (grpcio可能是一个坚韧的饼干,在不同的操作系统上的作用不同,这使得这有些复杂)
  • 选择选项7-设置API密钥或连接网站,输入您的提供商并输入您的密钥。目前支持OpenAI,稳定的扩散。您可以多次运行此功能以添加多个提供商或更新密钥。请注意,这些提供商是一项付费服务,在任何免费信用到期后,您将需要支付更多积分以维持功能。 (如果您要加载外部图像,则不必这样做,但是要从AI映像提供商那里请求图像,您需要在此处定义API键。默认情况下,这将存储在应用程序文件夹中的纯文本文件中。这不是理想的。
  • (可选)选择选项9-禁用Pijuice LED。如果您有Pijuice单元,则可以运行此操作以禁用设备上不断闪烁的LED以节省宝贵的电池。
  • (可选)选择选项10-安装SMB和默认共享。这将在提示和图像文件夹中设置一个完整的访问共享,可用于在网络上轻松管理,但有风险,因为它可以与完整的权限共享文件夹。仅在受信任的网络上执行此操作。

配置pycasso

  • 确保您在pycasso安装目录中。
  • 为所有配置选项运行nano .config。这里有很多可以玩的事情,除了文件路径外,您应该能够玩耍并查看会发生什么。
  • 配置的最重要项目是[EPD] – 类型。您应该将其设置为已插入的受支持的EPD,Omni-EPD的任何内容都可以使用,复制并粘贴适当的EPD字符串并在此处粘贴而不是Omni_epd.mock。以Omni_epd.Mock为单位的输入类型将在此文件夹中生成PNG文件,而不是更新显示。
  • 运行python3示例/review_screen.py,看看它在屏幕上是否有效。 (如果您的屏幕没有显示图像,那么您的EPD很可能会出现问题,您也可以检查pycasso .log以进行故障排除)

配置Pijuice

  • 运行Pijuice_Cli以配置您的Pijuice单元。
  • 有关更多信息,请参见Pijuice文档。我首选的配置是设置一个唤醒计时器,以每天在首选时间开始,但是您可以在合适的情况下设置此设置。
  • 您可以配置Pijuice上的按钮以执行不同的功能。我建议将第一个开关作为设备上的电源,因为这对于循环图像或在电源进行管理时打开设备非常有用。
Pijuice CLI菜单
Pijuice CLI唤醒配置

运行pycasso

  • 运行sudo systemctl重启pycasso ,看看它是否有效!

自定义pycasso

  • 如果您已经通过安装运行,而pycasso正在工作,则它将在启动时运行。正常行为是运行一次,闭合,如果您拥有一个始终的系统,则可能希望禁用该服务,并且只需运行pycasso或通过CRON启动服务即可。
  • 使用Pijuice,您可以配置Shutdown_on_battery,以自动关闭并在pycasso完成时卸下电源,以完成无头电池驱动的过程。要谨慎一点,以节省电池,即使在例外,它也更喜欢将其关闭。如果您遇到程序错误,则只有WAIT_TO_RUN(默认为30)秒即可连接到PI并禁用服务以修复。
  • 使用.config选项稍微播放一些,以便屏幕上的所有内容对您看起来都很好,并且可以为您的实现工作。文件中的所有配置项目都有描述。在尝试时,我建议您使用Historic_amount将模式设置为仅从历史积压的图像中获取图像,以便在设置API时不会在API上花费信用。
  • 配置您的提示,以使用 /prompts/artists.txt, /prompts/subjects.txt和 /prompts/prompts.txt将提示发送到提供商
    • 查看示例的标记提示,以学习如何在您的提示中应用随机化以获取有趣的效果
    • 在提示中玩耍,看看什么对您有用。有关更多信息,请参见括号通配符和提示块。

行政

  • 通过Raspberry Pi单元,访问及时的生成文件,配置和保存的图像可能会变得复杂。我建议设置SMB共享,以便于访问这些文件夹。在此处跟踪以自动设置此设置的功能请求。
  • 如果将shutdown_on_battery设置为true,则应该能够将Pijuice插入电源,以确保启动它时它保持原状。
  • 如果发生灾难,并且您已经关闭_ON_BATTERY和SHUTDOWN_ON_EXEPTION都设置为True,并且无法将设备保持足够长的时间登录,则可能需要拔下SD卡并尝试修复配置。如果您无法使用此选项,则可能需要刷新它并从头开始。在此处跟踪延长电池寿命的优先事项的同时,可以解决这些问题。

支架通配符

为了增强pycasso中的动态及时生成,在pycasso中的许多文本文件和字符串都被解析以替换通配符的文本。在定义提示时,这允许更大的灵活性。

过去,所使用的三种类型的括号是:

  1. ()
  2. []
  3. {}

可以在.config中添加,删除或自定义。它们包括在内以默认使用任何旧文本解析器来保持功能,但是没有理由再使用多个括号了。建议仅使用()。

例如,通过管道分开不同的选项(选项1 |选项2 |(选项(3 | 4 | 5 | 6)|选项7)。解析器将首先查找最低的括号级别,仅选择文本的一个随机选项,然后继续进行下一个级别。除非另有说明,否则每个选项都有相等的机会从每个支架对中选择。这意味着使用嵌套括号,您应该考虑解析的方式在考虑某些文本发生的可能性时的工作方式。例如,(好|(b | r)AD)狗可以将好狗返回一只坏狗或rad狗。该选项将在每个支架对之间随机选择,因此您有50%的好狗的机会,有25%的坏狗的机会和25%的Rad Dog的机会。

在任何细分市场的开头,您还可以为特定选项提供权重。例如(20:选项A |选项B | 0:选项C)应提供选项的频率比选项B高20倍。选项C永远不会出现。这些权重也可以在一个及时构建文本文件之一中的每一行开始时使用,以指定选择该行的可能性。

与琴弦一起玩耍,看看什么对您有用。您可以将EPD留在测试模式下,没有选择提供者模式,并且测试显示将向您展示它将提取的主题。

以下是一些人如何使用这些使简单提示更加复杂的示例:

a(| | happy | sad)(狗|猫|鸟)可能会导致:

  • 一只狗,一只快乐的狗,悲伤的狗,一只猫,快乐的猫,一个悲伤的猫,猫,快乐的鸟或悲伤的鸟。所有选项都具有相同的发生概率。

A(狗|猫)(|(携带|偷|

  • 1/4 of the time A Dog, 1/4 of the time A Cat, 1/16 of the time A Dog Carrying An Apple, 1/16 of the time A Dog Carrying A Banana, 1/16 of the time A Dog Stealing An Apple, 1/16 of the time A Dog Stealing A Banana, 1/16 of the time A Cat Carrying An Apple, 1/16 of the time A Cat Stealing An Apple, 1/16 of the time A Cat Stealing An Apple or 1/16的猫偷香蕉

A(5:友好| 2:n罕见|稀有)(3:狗|猫)可能会导致:

  • 15/32的时间是一只友好的狗,一只罕见的狗的3/16 ,当时的3/32是稀有狗, 5/32的时间是友善的猫, 1/16的时间,当时不常见的猫或1/32的时间或稀有猫的1/32

提示块

pycasso现在在配置中启用时支持“提示块”。这些允许使用更动态的提示。默认情况下,它使用<>字符并指定要处理的文本的一部分。内外执行检测和处理,因此可以将过程块的结果嵌套并作为参数或文本传递给其他块。块还可以与上述定义的通配符一起使用,从而可以在发电期间具有很大的灵活性和多样性。

  • 例如,<llm; <quote >>以利希滕斯坦(Lichtenstein)的风格尝试加载Zenquotes的报价,然后将其传递给LLM以将文本转变为图像生成提供商之一要消费的文本
  • 所有提示块都应在故障上返回空白字符串,因此即使一个提示块失败,您的提示仍然会尝试构建自身。

一些提示块接受参数。默认情况下,参数之间的分离器为“;”,但是可以在配置中修改。

  • 例如<文件;路径/to/file>将从位于路径/to/file的文件中加载一条线

由于生成的文本可能是不可预测且长的,因此我们还可以指定如果在配置中启用了我们希望的主题,并且我们正在屏幕上显示文本。默认情况下,我们使用{}字符来执行此操作:

  • 通过<llm; {<Quote>}>的次要修改,在Lichtenstein的样式中,我们现在可以确保在我们仍然使用LLM的丰富文本来请求图像时,只有引用显示为屏幕上的文本。

块的检测和处理是递归的,包含包含的。这意味着将处理其他方法中的文件,配置和生成的提示块。学习如何使用此操作的最佳方法是四处玩并查看可能的可能性。

块类型

  • <file>:文件块从文件中加载一行文本。文件中的文本还使用上述定义的通配符处理。该文本也用于过程块。需要作为参数提供文件的途径。
    • 示例用法:<file; path/to/file> – 从文件路径/to/file加载一行
  • <llm>:LLM块请求LLM增强或响应提供的提示。目前OpenAI/CHATGPT是唯一可用的API。使用.config中可用的变量llm_system_prompt来定义了用于处理文本的AI的说明
    • 示例用法:<llm;请求提示> – 返回提供的llm的结果
  • <RSS>:RSS块从提供的链接中拉出RSS feed,并从供稿中返回文本。需要作为参数提供的RSS feed路径/URL。可以提供可选的参数来定义标签(默认为标题,这适用于大多数新闻RSS提供商)以从项目中导出,并定义要导出的项目索引(最近项目默认为0)。
    • 示例用法:<rss; https://testnews.notarealwebsite/feed> – 返回提供的最新新闻的标题
    • <rss; https://testnews.notarealwebsite/feed;说明> – 返回提供的最新新闻的描述
    • <rss; https://testnews.notarealwebsite/feed; title; title; 2> – 返回提供的第三个最新新闻的标题
  • <Quote>:引用块提供了来自Zenquotes的“励志”报价。最好用LLM使用将报价按摩到艺术品中
    • 示例用法:<Quote> – 完整返回报价

例子

  • <llm;(<文件;路径/to/file> | <quote>)> – 从文件路径/to/file或从Zenquotes引用的行发送到LLM,然后从LLM返回响应
  • <rss; https://testnews.notarealwebsite/feed>在<file; path; path; path/to/file>的样式中提供了一个提示

配置

您可以在pycasso安装文件夹中运行Nano .Config,以配置pycasso运行的方式。有很多选择可以配置您的体验,强烈建议您使用这些选项来找到最适合您的设置的设置。如果您希望在任何时候回滚到默认配置,则可以找到它是 /examples/.config-example,或者可以删除.config和运行pycasso将自动恢复默认值。如果您经常运行pycasso以查看更新的更改,则建议通过将所有提供商设置为0,或使用外部/生成的模式来使用测试模式,以便每次运行程序时都不会为您的提供商充电。在下面,您将找到所有配置部分和项目的完整说明。

文件

与pycasso中的文件操作有关的设置

  • save_image:指示pycasso是否保存从提供商检索的图像的布尔标志。如果“ true”, pycasso将始终保存在定义的位置中检索到的图像。如果“ false” pycasso仅在EPD上显示图像,则一旦再次更新EPD,则该图像将丢失。 (布尔)
  • save_date:一个布尔标志,该标志指示pycasso是否在保存的文件名开始时是否添加DateTime。 (布尔)
  • external_image_location:使用外部模式时,相对于pycasso工作目录的文件路径相对于Pycasso工作目录加载外部图像。 (细绳)
  • 生成_image_location:相对于pycasso工作目录的文件路径将生成的图像保存到使用提供商时,并从使用生成模式时加载它们。 (细绳)
  • Image_Format:从外部或生成的图像文件夹加载图像时要查找的文件类型。大多数情况下,它将是“ PNG”。 (细绳)
  • font_file:相对于pycasso工作目录的文件路径,以加载字体文件。这支持在EPD上绘制文本。 (细绳)
  • 主题file:相对于pycasso工作目录的文件路径从使用提示模式1时加载“主题”。(字符串)
  • ARTISTS_FILE:相对于pycasso工作目录的文件路径从使用提示模式1时加载“艺术家”。(字符串)
  • bucesss_file:使用提示模式2时从加载“提示”的pycasso工作目录的文件路径。(string)
  • resize_external:指示pycasso是否调整外部图像大小的布尔标志。如果“ true”, pycasso将调整提供的图像大小,以使整个图像适合EPD。如果“错误”, pycasso将通过较小程度的调整,然后再裁剪来填充整个屏幕。 (布尔)
  • file_name_max_length:字符中的最大长度可以是。 (整数)

EPD

这些设置被Omni-EPD消耗以自定义EPD信息。有关OMNI-EPD选项的更多信息,请参见OMNI-EPD。

  • 类型:使用的EPD显示类型。有关支持的显示及其名称,请参见Omni-EPD。 (细绳)
  • 模式:使用EPD的颜色模式。有关每个显示的支持模式,请参见Omni-EPD。 (细绳)
  • PALETTE_FILTER:默认情况下不需要并发表评论。如果您想自定义调色板,请根据此处提供的信息进行不计入和配置。抖动所需的。 (元组)

展示

这些设置由Omni-EPD消耗,以自定义EPD上的显示。有关这些选项的更多信息,请参见Omni-EPD。

  • 旋转:图像以度为单位。您可能不需要使用它,而是使用其他旋转选项代替。 (整数)
  • flip_horizontal:指示EPD水平翻转图像的布尔标志(布尔)
  • flip_vertical:指示EPD垂直翻转图像的布尔旗(布尔)
  • 抖动:默认情况下发表了评论。不注重设定抖动模式的使用。有关支持的模式和更多信息,请参见Omni-EPD Wiki。 (细绳)
  • dither_strength:默认情况下已注释。如果使用抖动,请输入。设定抖动算法的强度。有关更多信息,请参见Omni-EPD Wiki。 (漂浮)
  • dither_serpentine:默认情况下已评论。如果使用抖动,请输入。一个布尔标志,该标志指示抖动算法是否使用蛇形抖动。有关更多信息,请参见Omni-EPD Wiki。 (布尔)

图像增强功能

这些设置由Omni-EPD消耗,以自定义EPD上的显示。有关这些选项的更多信息,请参见Omni-EPD。

  • 对比:设置EPD的对比度。 1是正常的。 (整数)
  • 亮度:设定EPD的亮度量。 1是正常的。 (整数)
  • 清晰度:设定EPD的清晰度。 1是正常的。 (整数)

迅速的

与创建提交提示和AI艺术提供商请求的提示有关的设置

  • 模式:在及时生成中使用的模式。 (整数)目前支持3种不同类型的模式:
    • 1-(preamble -objectss.txt -connector -artists.txt -postscript)
    • 2-(preamble-提示
    • 0-上述任何一个(随机选择上述选项之一)
  • 序言:填充上面及时构造的序言部分的文本。支撑的支架通配符和提示块。(字符串)
  • 连接器:填充上面提示构造的连接器部分的文本。支撑的支架通配符和提示块。(字符串)
  • PostScript:填写上面提示构造的后录部分的文本。支撑的支架通配符和提示块。(字符串)

文本

与文件名和字符串的解析文本有关的设置以及EPD上的文本显示

  • add_text:一个布尔标志,指示pycasso是否在EPD上显示文本框。 (布尔)
  • USE_BLOCKS:一个布尔标志,指示pycasso是否使用提示块解释某些字符串。 (布尔)
  • 指定_subject:指示pycasso是否允许主题指定主题的布尔标志。 (布尔)
  • PARSE_FILE_TEXT:一个布尔标志,指示pycasso是否在外部图像模式下解析文件名。 (布尔)
  • preamble_regex:正常正则是在外部图像名称中找到序言和主文本之间的拆分点。 (细绳)
  • Artist_Regex:正常正则是在外部图像名称中找到主题与艺术家之间的拆分点。 (细绳)
  • remove_text:以查找并完全从任何文件名中删除的字符串列表,以将其解析到pycasso中。 (列表)
  • parse_random_text:一个布尔标志,指示pycasso是否使用括号通配符解释某些字符串。 (布尔)
  • PARSE_BRACKET:按层次结构中最高的顺序排列的括号对列表。 (列表)
  • block_brackets:一个带有2个括号对的字符串,用于指定在提示块中使用的块。建议使用不常见的括号。 (细绳)
  • block_seperator:一个带有1个字符的字符串,用于将块中的参数与提示块分开。建议使用不常见的字符。 (细绳)
  • object_brackets:使用提示块时使用2个括号对的字符串,用于指定主题。建议使用不常见的括号。 (细绳)
  • Box_to_floor:指示pycasso是否将文本框一直绘制到图像底部的布尔标志,而不仅仅是在文本周围出现。 (布尔)
  • Box_To_Edge:指示pycasso是否将文本框一直绘制到图像边缘而不只是出现在文本周围的边缘。 (布尔)
  • Artist_loc:艺术家文本的像素中的距离远离图像的底部。 (整数)
  • Artist_size:艺术家文本的字体大小。 (整数)
  • title_loc:标题文本的像素中的距离远离图像的底部。 (整数)
  • title_size:标题文本的字体大小。 (整数)
  • 填充:包含标题和艺术家文本的文本框的填充。 (整数)
  • 不透明度:文本框的不透明度。 0对于完全透明,为255用于完全不透明。 (整数)
  • Override_text:一个布尔标志,以指示是否使用文件中的其他文本覆盖最终文本(布尔)
  • Override_path:相对于pycasso工作目录的文件路径,从启用Override_text(字符串)加载覆盖文本

图标

与要在EPD上显示的状态图标有关的设置

  • ICON_COLOR:显示图标中的颜色。设置为自动以自动检测白色或黑色,具体取决于背景的阴影(字符串)
  • ICON_PADDING:从左上角填充像素以放置图标(整数)
  • ICON_CORNER:将图标放入哪个角落可以是NW,NE,SW或SE。 (细绳)
  • ICON_SIZE:像素(Integer)中状态图标的大小
  • ICON_WIDTH:像素中状态图标线的宽度(目前由于新图标系统而未使用)(Integer)(Integer)
  • ICON_GAP:单个图标之间的像素差距(Integer)
  • ICON_OPACITY:状态图标的不透明度。 0对于完全透明,为255用于完全不透明。 (整数)
  • icon_path:相对于pycasso工作目录的文件路径,以在。(字符串)中找到图标
  • Show_battery_icon:指示pycasso显示电池状态图标的布尔标志。 (布尔)
  • Show_provider_icon:一个布尔标志,指示pycasso根据所使用的提供商和任何提供商故障显示图标。 (布尔)
  • Show_status_icon:一个布尔标志,指示pycasso显示异常图标。 (布尔)

记录

与pycasso的错误和信息记录有关的设置。

  • log_file:相对于pycasso工作目录的文件路径以保存日志文件(字符串)
  • log_level:最小记录级别以保存到日志文件。可能的选项 – 关键:50,错误:40,警告:30,信息:20,调试:10,Notset:0(Integer)

提供者

与图像提供商相关的设置。

  • 以下项目是提供“比较机会”的整数。这意味着您可以选择多种提供商模式, pycasso将随机选择其中一种。较高的整数允许被选中的机会更高。例如,external_amount = 0,histionic_amount = 1,stemability_amount = 2将导致外部图像永远不会出现,并且每2个稳定的扩散图像出现大约1个历史图像。如果将所有选项设置为0,则pycasso将根据test_enabled的值退出或运行其测试模式。
    • external_amount: pycasso运行外部模式的比较机会(从外部_image_location文件夹加载图像)。 (整数)
    • Historic_amount: pycasso运行历史模式的比较机会(从Generated_image_location文件夹中加载图像)。 (整数)
    • stematie_amount: pycasso运行稳定扩散模式的比较机会(从稳定扩散在线加载图像)。 (整数)
    • Dalle_amount: pycasso运行Dalle模式的比较机会(从Dalle在线加载图像)。 (整数)
    • Automatic_Amount: pycasso运行自动1111稳定扩散WebUI模式的比较机会(从有效的自动1111 API加载图像)。 (整数)
  • USE_KEYCHAIN:指示pycasso是否使用钥匙链来管理密钥的布尔标志。设置为false时,只需查找带有凭据的.creds文件。这可能会根据您的董事会而起作用也可能不起作用。有关更多信息,请参见GRPCIO问题。 (布尔)
  • recredential_path:相对于pycasso工作目录的文件路径以查找API凭据。 (细绳)
  • test_enabled:一个布尔标志,指示pycasso设置为0时运行测试模式。(布尔值)
  • stable_host:提供API位置的字符串将请求发送到在线稳定扩散。 (细绳)
  • Automatic_host:如果使用自动模式,则是自动1111 WebUI API的IP地址或主机。 (细绳)
  • Automatic_port:如果使用自动模式,则是用于自动1111 WebUI API的端口。 (整数)
  • Provider_fallback:一个布尔标志,指示pycasso如果最初选择的提供商失败,则可以将Pycasso倒回另一个随机的非零提供商。 (布尔)
  • llm_model:用于LLM块(String)的模型
  • llm_temperature:控制输出中的随机性(0.0-1.0)(float)
  • llm_max_tokens:响应中的最大令牌数(整数)
  • llm_system_prompt:提示鼓励LLM做您想做的事(字符串)

一代

与AI图像提供商相关的图像的生成相关的设置

  • Image_rotate:发送给提供商之前的图像旋转。这样,您可以根据自己的喜好获得非常适合肖像或景观的图像。 (整数)
  • 填充:如果原始图像没有填写整个框架,则指示pycasso要求Pycasso再次填充图像的布尔标志。 (布尔)
  • infill_percent:如果将填充物设置为True,这将使原始图像请求以此百分比较小,然后填充其余图像以适合框架。 (整数)

Pijuice

与Pijuice Hat配置有关的设置。

  • USE_PIJUICE:一个布尔标志,指示运行脚本是否使用Pijuice类。 (布尔)
  • shutdown_on_battery:如果Pijuice在电池上运行(未插入电源),则指示运行脚本是否关闭Raspberry Pi的布尔标志。 (布尔)
  • shutdown_on_exception:指示运行脚本的布尔标志,如果程序遇到异常,是否要关闭。用于停止电池误差。警告:最坏的情况,这可能会导致设备闪烁,如果pycasso在失败后继续重新启动,即使在等待时间后,您也可能无法在SSH上进行SSH 。 (布尔)
  • wait_to_run:该在运行pycasso之前,该等待几秒钟。可以帮助确保Pijuice课程准备就绪,并在遇到问题时为SSH提供缓冲区。 (整数)
  • Charge_Display: pycasso应该开始显示低电池符号的电池百分比。 (整数)

邮政

与在网络上发布和共享pycasso输出有关的设置。使用set_keys.py进行设置。

  • post_connector:如果以此模式发布,则在主题和艺术家之间放置一个字符串。 (细绳)
  • POST_TO_MASTODON:一个布尔标志,指示pycasso尝试将图像发布到Mastodon。 (布尔)
  • mastodon_app_name:与您的帐户相关联的应用程序名称。 (细绳)
  • mastodon_base_url:帐户的mastodon实例(字符串)的URL
  • mastodon_client_cred_path:相对于pycasso工作目录到Mastodon的客户端秘密(String)的文件路径
  • mastodon_user_cred_path:相对于pycasso工作目录到Mastodon的用户秘密(String)的文件路径

调试

以下设置仅与开发有关。仅当您知道自己在做什么时使用它们。

  • test_epd_width:像素中的宽度以将模拟EPD设置为。主要用于测试目的。 (整数)
  • test_epd_height:像素中的高度将模拟EPD设置为。主要用于测试目的。 (整数)

参考

bash安装

使用脚本安装/升级pycasso时,有许多项目可供选择。请参阅下面的著名信息。

  • 重要更新 – 已更新该脚本以创建位于安装文件夹中的自己的虚拟环境,并且不再使用Sudo运行Python安装。如果您需要更新旧的安装:
    • 我的第一个建议是备份您的配置,文件夹和提示,使用最新版本(写作时的书呆子)重新安装您的操作系统,然后使用默认设置重新安装pycasso
    • 如果您想保留旧的安装,只需在安装或更新之前运行选项13“请勿使用本地环境(用于旧版安装)”。

1-安装/升级pycasso (完整)

这是安装pycasso主要和建议的方法。它将安装或升级您的pycasso ,根据需要提取和更新所有项目要求。

2-升级pycasso最少(请勿更新要求)

如果您需要升级pycasso ,而只是一个小版本,则可以使用它来花费太多时间来获取要求。建议使用选项1,但是如果进行故障排除或测试,这可能会节省时间。

3-安装pycasso服务

这将pycasso服务添加到SystemCtl并启用它,以便pycasso启动启动。

4-安装Pijuice

这为那些使用Pijuice电池系统安装了Pijuice

5-应用GRPCIO修复(回滚1.44)

通过回滚到1.44版,这适用于GRPCIO,有时可以减轻钥匙圈的问题

6-应用GRPCIO更新(最新版本更新)

这将GRPCIO更新为最新版本。与上述相反,有时最新版本会更好。

7-设置API密钥或连接网站

运行一个命令行Python脚本,使您可以将API键或登录设置为使用Web服务。

8-迁移配置文件

更新后,运行此选项将当前配置移至新的.config文件,保持旧配置,但添加了已创建的任何新配置选项。请注意,这将删除.config文件中的任何注释,这可能会使文件更加困难。有关所有配置如有必要的内容,请参阅“配置”部分。配置迁移实用程序将在安装文件夹中创建最近迁移配置的备份。

9-禁用Pijuice LED

Pijuice的LED默认情况下。这可能是不必要的电池耗尽,建议选择此选项以将其关闭。

10-安装SMB和默认共享

This option sets up recommended folders (prompts and images) within the pycasso folder to allow easy modification of prompt text files and viewing of generated images.

11 – Uninstall pycasso

Uninstalls pycasso by deleting the install folder and removing packages.

12 – Uninstall pycasso Service

Disables pycasso service, stopping it from being run on boot or from systemctl.

13 – Do not use local environment (use for legacy installs)

In the past pycasso used the default virtual environment for python, and was run using sudo. This is not the best practise and externally managed environments became more difficult to utilise in later rapsbian releases. As such, the bash install program was updated to properly utilise a application-specific virtual environment and remove sudo from install commands. For those running old versions, using this command before installing or uninstalling pycasso , or running any scripts will be required.

0 – Exit Setup

This closes the bash installer. You can also use ctrl+c on most systems to achieve the same thing.

故障排除

There is a symbol on the top left of the screen

By default, pycasso puts a faint symbol on the top left of the EPD to inform of system events. By default, these are:

  • Square for low battery (low battery warning level configurable in .config, default 15%)
  • Cross for exception (likely PiJuice failing to load if you are using it, try a longer wait_to_run) . If you have anything odd in your pycasso .log file you can post it here.

GLIBC_2.33 not found

I have experienced this error even with the most recent release of raspbian. Following this appeared to work, however I haven\’t had any luck for a while. It might work for you:

sudo pip3 uninstall grpcio 
sudo pip3 uninstall grpcio-status 
sudo pip3 install grpcio==1.44.0 --no-binary=grpcio
sudo pip3 install grpcio-tools==1.44.0 --no-binary=grpcio-tools

If you can\’t store your credentials in keyring, you\’ll have to set the use_keyring option in .config to False, and provide your credentials using setup.sh option 5 or set_keys.py

Module I2C Missing

I have found this might cause issues with PiJuice. This is possibly due to running a lite version of the operating system. I found success by:

  • Updating the kernel with sudo rpi-update
  • Rebooting
  • Running sudo raspi-config
  • Selecting Interface Options -> I2C -> Yes

Log an issue

If you\’re experiencing a bug or issue, or have a feature request, please visit the Issues page to let us know. Recommend including the relevant information provided in pycasso .log and your current .config

下载源码

通过命令行克隆项目:

git clone https://github.com/jezs00/pycasso.git

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

申明:本文由第三方发布,内容仅代表作者观点,与本网站无关。对本文以及其中全部或者部分内容的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。本网发布或转载文章出于传递更多信息之目的,并不意味着赞同其观点或证实其描述,也不代表本网对其真实性负责。

左子网 建站资源 pycasso https://www.zuozi.net/35445.html

TempoTokens
上一篇: TempoTokens
awesome generative ai
下一篇: awesome generative ai
常见问题
  • 1、自动:拍下后,点击(下载)链接即可下载;2、手动:拍下后,联系卖家发放即可或者联系官方找开发者发货。
查看详情
  • 1、源码默认交易周期:手动发货商品为1-3天,并且用户付款金额将会进入平台担保直到交易完成或者3-7天即可发放,如遇纠纷无限期延长收款金额直至纠纷解决或者退款!;
查看详情
  • 1、描述:源码描述(含标题)与实际源码不一致的(例:货不对板); 2、演示:有演示站时,与实际源码小于95%一致的(但描述中有”不保证完全一样、有变化的可能性”类似显著声明的除外); 3、发货:不发货可无理由退款; 4、安装:免费提供安装服务的源码但卖家不履行的; 5、收费:价格虚标,额外收取其他费用的(但描述中有显著声明或双方交易前有商定的除外); 6、其他:如质量方面的硬性常规问题BUG等。 注:经核实符合上述任一,均支持退款,但卖家予以积极解决问题则除外。
查看详情
  • 1、左子会对双方交易的过程及交易商品的快照进行永久存档,以确保交易的真实、有效、安全! 2、左子无法对如“永久包更新”、“永久技术支持”等类似交易之后的商家承诺做担保,请买家自行鉴别; 3、在源码同时有网站演示与图片演示,且站演与图演不一致时,默认按图演作为纠纷评判依据(特别声明或有商定除外); 4、在没有”无任何正当退款依据”的前提下,商品写有”一旦售出,概不支持退款”等类似的声明,视为无效声明; 5、在未拍下前,双方在QQ上所商定的交易内容,亦可成为纠纷评判依据(商定与描述冲突时,商定为准); 6、因聊天记录可作为纠纷评判依据,故双方联系时,只与对方在左子上所留的QQ、手机号沟通,以防对方不承认自我承诺。 7、虽然交易产生纠纷的几率很小,但一定要保留如聊天记录、手机短信等这样的重要信息,以防产生纠纷时便于左子介入快速处理。
查看详情

相关文章

猜你喜欢
发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务